解决Dompdf中文换行及无法加载图片的问题

Dompdf对中文的支持不够友好,例如默认情况下中文段落不会自动换行。
另外,如果DOM文档中存在远程图片路径,也不能正常加载该图片,生成的pdf中显示 image not found or type unknown 错误。
解决以上两个问题,需要修改Dompdf的源文件。

支持中文换行

修改dompdf库根目录下的 dompdf/src/FrameReflower/Text.php 文件第112行(此处为dompdf 0.8版本,不同版本可能略有不同)。

//原代码
// split the text into words
$words = preg_split('/([\s-]+)/u', $text, -1, PREG_SPLIT_DELIM_CAPTURE);

//修改为
preg_match_all("/./u", $text, $array);
$words = array(0);

加载远程图片

修改dompdf库根目录下的 dompdf/src/Options.php 文件第182行(此处为dompdf 0.8版本,不同版本可能略有不同)。
另外,DOM文档中的图片路径为绝对路径。

//Enable remote file access
private $isRemoteEnabled = true;  //默认为false
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页