簡體   English   中英

將 Symfony 包添加到 Silex 框架

[英]Add Symfony bundle to Silex Framework

我有一個 Silex 項目,我正在嘗試使用KnpSnappyBundle從樹枝視圖生成一個 pdf 文件。 我的控制器中有以下代碼:

$this->app['knp_snappy.pdf'] = new KnpSnappyBundle($this->app, $this->client);

然后我有類似的東西:

if ($request->get('print') == 'print') {
    $html = $body;

    return new Response(
        $app['knp_snappy.pdf']->getOutputFromHtml($html),
        200,
        array(
            'Content-Type'          => 'application/pdf',
            'Content-Disposition'   => 'attachment; filename="file.pdf"'
        )
    );
}

我有以下錯誤: Fatal error: Call to undefined method Knp\\Bundle\\SnappyBundle\\KnpSnappyBundle::getOutputFromHtml()

你們能幫我解決這個問題嗎,或者找到另一種方法來使用 Silex 從 html 獲取 pdf 文件(我試過 domtopdf,它有效,但它很丑,似乎不支持 svg 圖像)...

也許我找到了另一種方法來做到這一點,但我想我會遇到同樣的問題...... PdfBundle

KnpSnappyBundle 只是 SNappy 庫的封裝,因此嘗試將其注入 Silex 應用程序是沒有意義的。 這不值得。

只需使用Snappy Pdf類注冊為服務,它會像您期望的那樣工作。

如果您不確定如何將它放入您的 DI 容器,您也可以檢查這個SilexServiceProvider for Snappy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM