WkHTMLtoPDF不加载本地CSS和图像

前端之家收集整理的这篇文章主要介绍了WkHTMLtoPDF不加载本地CSS和图像前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看过很多与这个问题非常相似的问题,所以我起初犹豫不决。但没有任何建议解决了我的问题,我似乎无法弄清楚自己有什么问题。

对于我为一个客户制作的项目,他们希望能够将客户的报价(使用在线表单生成)转换为PDF。足够简单由于整个项目都是PHP,所以我使用了以下简单的过程:

>将报价保存为临时HTML文件
>使用WkHTMLtoPDF将HTML文件转换为PDF
>输出此PDF文件
>清理(删除临时文件)

这一直工作直到他们改变了服务器。新服务器具有防火墙。

首先,PDF转换步骤返回一个防火墙页面,表示服务器无法进行出站连接。为了解决这个问题,我直接输入了HTML文件,而不是链接到它(/var/www/mysite/temp/18382.html而不是www.example.com/temp/18382.html)。这转换了HTML,但防火墙阻止了加载CSS和图像

我可以通过将其直接嵌入到网站而不是链接到它(使用< style>标签)来克服CSS,但是这对于图像不起作用

我尝试使用相对链接。我更改了< img src =“http://www.example.com/temp/image.jpg”/>到< img src =“./ image.jpg”/&gt ;.这没有办法。 接下来我试过< img src =“file:///var/www/mysite/temp/image.jpg”/>但是这也不行

我阅读并浏览WkHTMLtoPDF手册,我尝试了几个不同的命令行参数,如–enable-local-file-access,–enable / var / www / mysite / temp /和–images,但似乎没有修复它

解决方法

如果您在linux上检查您的图像的所有权。对于Windows,您将在 http://code.google.com/p/wkhtmltopdf/wiki/Usage找到一些信息。

我尝试了不同类型的图像路径:

>< img src =“file:///var/www/testpdf/flowers.jpg”>< br>
>< img src =“./ flowers.jpg”>< br>
>< img src =“flowers.jpg”>< br>
>< img src =“/ var / www / testpdf / flowers.jpg”>< br>

所有图像显示正确。我没有使用任何命令行参数(只有wkhtmltopdf /var/www/testpdf/makepdf.html makepdf.pdf)

猜你在找的HTML相关文章