我在symfony 4上使用dompdf生成pdf。 一切都在本地开发人员中进行。我试图在Heroku上的产品中启动我的应用程序,但是当我进入生成PDF的链接时,我得到了:
我告诉自己,这是来自要求的,他不得不错过Heroku上的东西。
以下是运行dompdf所需的列表:
要求
- PHP版本5.4.0或更高版本
- DOM扩展
- GD扩展
- MBString扩展名
- php-font-lib
- php-svg-lib
我有PHP 7.3
在我的composer.json文件中:
"require": {
//...
"ext-mbstring": "*","ext-gd": "*","dompdf/dompdf": "^0.8.3","phenx/php-font-lib": "^0.5.1","phenx/php-svg-lib": "^0.3.3",}
根据Heroku文档,默认情况下启用DOM:
要在我的php文件中生成一些pdf文件:
public function generatePdf(OrdreMission $ordre)
{
// Configure Dompdf according to your needs
$pdfOptions = new Options();
$pdfOptions->setIsRemoteEnabled(true);
// Instantiate Dompdf with our options
$dompdf = new Dompdf();
$dompdf->setOptions($pdfOptions);
// $dompdf->set_option('isHtml5ParserEnabled',true);
// Retrieve the HTML generated in our twig file
$html = "<link type='text/css href='/css/bootstrap.min.css' rel='stylesheet'>" . $this->templating->render('ordre_mission/pdf.html.twig',[
'ordre' => $ordre,]);
// Load HTML to Dompdf
$dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation 'portrait' or 'portrait'
$dompdf->setPaper('A4','portrait');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser (inline view)
$dompdf->stream("mypdf.pdf",[
"Attachment" => false,]);
}
在开发环境中没问题,但在生产环境中没事
有人可以帮我吗?