[英]DOMPDF style and image rendering issue on windows 7, CodeIgniter 3
[英]dompdf image overflow issue
我有一个PDF生成问题,目前我的系统使用dompdf将HTML转换为PDF,这一切都运行正常。 但是,如果用户插入的图像大于A4页面,则PDF会严重损坏并且大图像下方的所有内容都会聚集在一起或根本不显示。
这里有两个PDF来显示问题的一个例子
这个很好
https://dl.dropbox.com/u/65878041/OK.pdf
这个你可以看到第一张图像大于A4页面时所有内容都被搞砸了,当它应该与前一张相同时。
https://dl.dropbox.com/u/65878041/Issue.pdf
我理想的做法是将图像分成几部分,并根据需要跨越多个页面。 就像在这个LaTeX解决方案中完成的一样。 有没有可能用dompdf这样做? 或者用于HTML到PDF的任何其他PHP库?
我自己调查了一下,显然如果它比A4页面大,我可以剪掉一张图片。 但问题在于需要知道手头上是否有文字或类似内容的方法,所以它并不那么简单。
谢谢大家。 任何见解都将非常感激。
如果你发布了html和css,我会更有帮助...记住两点:
选项1
尝试将图像包装在附加DIV中并显式设置宽度和溢出规则。
选项#2
以前我是一个大风扇dompdf
,但发现后wkhtmltopdf
永不回头。 wkhtmltopdf
是一个wkhtmltopdf
的工具,可以正确完成工作。 要尝试此解决方案,请执行以下操作
/path/to/my/proj/bin/wkhtmltopdf
file_put_contents('/tmp/myfile.html', $html);
shell_exec('/path/to/my/proj/bin/wkhtmltopdf /tmp/myfile.html /tmp/myfile.pdf')
获取生成的pdf的内容,更改响应标头并为该文件提供服务:
header('Content-Type: application/pdf');
echo file_get_contents('/tmp/myfile.pdf');
我不知道图像是如何显示的,但你可以告诉dompdf在某个元素之后或之前分割页面。 例如:
<div style='page-break-after:always;'>
<img src="PATH_TO_IMAGE" />
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.