wkhtmltoimage是linux上根据html截图为image的工具
wkhtmltoimage --width 375 'url/test.html?a=10&b=12&c=7' ./Desktop/test.png
url不带参数的话不用使用单引号包裹url路径
--width制定页面宽度,不然默认1024,不要试图使用document.documentElement.clientWidth动态设置大小,这个值会是0
如果提示缺少libXrender.so.1
ldd wkhtmltoimage可以查找程序依赖,从其他运行正常地方找到了这个库的路径/usr/lib64/libXrender.so.1。复制过去直接使用
如果中文乱码,可以从windows中拖过去字体到/usr/share/fonts/目录
windows字体位置:控制面板->字体 或者 C:\Windows\Fonts
调试:
我的调试方法是,<span id="log"></span>
function setLog(log){
var ele = document.getElementById('log')
ele.innerHTML += log
}
需要调试的地方使用setLog('log....')就能从截图中查看错误信息
如果使用vue开发的项目,就不要用setLog了,可以用vue自带的{{}}方式,{{errorLog}}打印日志
vue项目不能使用es6语法,不能引用使用了es6语法的js库,
不能使用localStorage等常规浏览器中的内置对象,window、document好像还是可以用的