我们有一个网站目前在Ubuntu 16.04服务器上,我们正在努力转移到亚马逊。该网站的其余部分(使用PHP Yii 1.1编写)工作正常,但以PDF格式显示报告的部分除外。
该报告是以pdf编写的,没有任何实际问题,但图像显示为红色X经过一些调试后,我得出的结论是大多数图像都是png图像,这就是为什么它们不显示。报告中的单个jpg图像正在显示。
我怎样才能让它发挥作用?报告的html版本(使用不同的代码)从同一个地方获取图像,并且工作得很好。我无法真正转换所有图像,因为它们是动态生成的。
我读到某个地方,pdf不支持png图像,真的吗?为什么它在当前服务器上渲染得很好?
我不相信这会有所帮助,但这里使用了一些代码: main.config:
'ePdf' => array(
'class' => 'ext.yii-pdf.EYiiPdf',
'params' => array(
'mpdf' => array(
'librarySourcePath' => 'application.vendors.mpdf.*',
'constants' => array(
'_MPDF_TEMP_PATH' => Yii::getPathOfAlias('application.runtime'),
),
'class'=>'mpdf', // the literal class filename to be loaded from the vendors folder
'defaultParams' => array( // More info: http://mpdf1.com/manual/index.php?tid=184
'mode' => '', // This parameter specifies the mode of the new document.
'format' => 'A4', // format A4, A5, ...
'default_font_size' => 0, // Sets the default document font size in points (pt)
'default_font' => '', // Sets the default font-family for the new document.
'mgl' => 15, // margin_left. Sets the page margins for the new document.
'mgr' => 15, // margin_right
'mgt' => 16, // margin_top
'mgb' => 16, // margin_bottom
'mgh' => 9, // margin_header
'mgf' => 9, // margin_footer
'orientation' => 'P', // landscape or portrait orientation
)
),
),
控制器:
$mPDF1 = Yii::app()->ePdf->mpdf('utf-8', 'A4');
$mPDF1->simpleTables = true;
$mPDF1->useSubstitutions = false;
$mPDF1->WriteHTML($this->renderPartial('pdfRXMapFile', array('model' => $model)));