如何在Wkhtmltopdf/wkhtmltoimage上运行自定义Javascript

How to run custom Javascript on Wkhtmltopdf/wkhtmltoimage?

本文关键字:运行 自定义 Javascript wkhtmltoimage Wkhtmltopdf      更新时间:2023-09-26

我想在网站上运行javascript,但当我这样做时,没有任何变化,我得到pdf,就好像我在上面没有运行javascript的结果一样,这是我所做的一个例子:

xvfb-run --server-args="-screen 0, 1024x768x24" wkhtmltoimage --run-script "javascript:('$(function(){ '$("div").hide()   ;}))" google.com google.png

我也有没有jquery的脚本,比如:

xvfb-run --server-args="-screen 0, 1024x768x24" wkhtmltopdf --run-script "javascript:(function(){ document.write("AHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"); ;})" google.com p2.pdf

但正如我所说,对pdf或png没有影响(因为我已经尝试了wkhtmltoimage和wkhtmltopdf)。

您的命令使用引号不正确;试试这个:

--run-script "javascript:('$(function(){ '$('div').hide()   ;}))"

此外,请尝试增加JavaScript延迟:

--javascript-delay 1000

http://wkhtmltopdf.org/usage/wkhtmltopdf.txt

关于问题

"你知道有什么方法可以生成更小尺寸的.png吗?因为我生成的每个png都有9MB的权重"

我在使用wkhtmltoimage生成大型PNG文件时也遇到了同样的问题,并通过添加标志--quality 0解决了这个问题,该标志将图像从3.5MB缩小到38KB。请注意,PNG正在进行无损压缩,因此图像质量不会改变,只会缩小大小。当你输出为jpg格式时,使用--quality标志时要小心,因为如果你设置得太低,这会模糊图像。