Я использую snfp-пакет Symfony2 kpn для генерации PDF-файлов. Я хочу создать PDF-файл с html-страницы с помощью css. Я нашел решение, но у него есть проблема с:
$pageUrl = $this->generateUrl('accounts_management_generate_pdf_markup', array('invoice' => $invoiceData), true); // use absolute path! return new \Symfony\Component\HttpFoundation\Response( $this->get('knp_snappy.pdf')->getOutput($pageUrl), 200, array( 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="file.pdf"' ) );
Проблема заключается в том, что pageUrl accounts_management_generate_pdf_markup
находится за областью безопасности и к ней невозможно получить доступ без аутентификации. Сгенерированный файл – это только страница входа в систему, к которой этот путь accounts_management_generate_pdf_markup
перенаправляется, если не регистрируется.
Мои вопросы:
Есть ли способ перейти на мгновенные учетные данные?
Есть ли другой способ, используя snappy bundle для генерации pdf с использованием стилей (css)
Вы можете добавить файл cookie сеанса в качестве аргумента функции getOutput:
$pageUrl = $this->generateUrl('route', array('id' => $id), true); $session = $this->get('session'); $session->save(); session_write_close(); return new Response( $this->get('knp_snappy.pdf')->getOutput($pageUrl, array('cookie' => array($session->getName() => $session->getId()))), 200, array( 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="file.pdf"' ) );