如何使用PHPpdf Bundle在Symfony 2.4上创建PDF

时间:2014-04-02 09:02:59

标签: php symfony pdf

我已经使用composer.phar正确安装并在AppKernel.php中添加了。 现在我试着做一个简单的pdf来看看它是如何工作的,但当我制作它时谷歌Chrome会向我显示这个错误:

  

加载pdf

时出错

对于bundle的安装,我按照以下步骤进行了操作(西班牙文,但很容易理解): http://symfony.es/bundles/psliwa/pdfbundle/instalacion-en-symfony-2-1

我的路由文件显示如下:

pdf_hello:
    pattern: /{_locale}/hello/{name}.{_format}
    defaults: { _controller: AcmeClientBundle:Default:pdf, _format: html}
    requirements:
        _format: html|pdf

我的控制器:

public function pdfAction($name){
    $format = $this->get('request')->get('_format');

    $content = $this->render(
        sprintf('AcmeClientBundle:Default:helloAction.%s.twig', $format),
        array('name' => $name)
    );

    $contentType = 'pdf' == $format ? 'application/pdf' : 'text/html';

    $response = new Response($content, 200, array('content-type' => $contentType));

    return $response;
}

我的意见:

{# hello.html.twig #}
Hello <b>{{ name }}</b>!

{# hello.pdf.twig #}
<pdf>
    <dynamic-page>
        Hello <b>{{ name }}</b>!
    </dynamic-page>
</pdf>

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

我有它的工作。我在代码中没有看到两件事:

use PHPPdf\Core\FacadeBuilder;
use Ps\PdfBundle\Annotation\Pdf;

/**
* @Pdf()
*/
public function pdfAction($name){
...
}

希望这有帮助。