设想:
我正在尝试截取用户使用后台进程创建的新 Web 应用程序的屏幕截图。我正在使用wkhtmltoimage和Xvfb。
问题:
好吧,截图过程工作得很好,但问题是 utf8 和 HTML5 视频在我的情况下不仅在服务器(Amazon VPC)中工作,而且在我的本地机器上工作
我对 UTF8 问题的第一个猜测是添加 UTF8 本地语言支持,即 en_IN.UTF8 但这并没有解决问题。
当我看到 HTML5 视频的问题时,我尝试搜索默认浏览器或渲染引擎 xvfb 使用。我在那里并不幸运,但发现 wkhtmltoimage 使用QtWebkit渲染引擎。
尝试检查我的本地(Ubuntu 13.04)和服务器 ubuntu 12.04 之间已安装软件包的差异。我几乎发现所有与 QtWebkit 相关的包都是一样的。
可能的解决方案:
我猜这个问题可能是在截屏时调用的浏览器/渲染引擎。
这是代码:
xvfb-run --server-args="-screen 0, 1024x680x24" wkhtmltoimage --use-xserver -f png --quality 94 --javascript-delay 2000 --disable-smart-width --zoom 0.8 --encoding "utf-8" --enable-plugins --width 650 --height 600 http://google.com new.png
我提到的一些在线文档:
wkhtmltoimage doc1
wkhtmltoimage doc2
我正在添加在本地和服务器中创建的图像。好吧,本地人有我正在寻找的所有细节。
本地机器截图:
亚马逊 VPC 服务器截图:
请指导我。从过去的 20 小时开始,我一直坚持这一点。
问候,
Hbksagar
PS:我开始使用 xvfb 是因为仅在使用 wkhtmltoimage 时出现以下错误,例如:
- QWidget:不使用 GUI 时无法创建 QWidget
- QPixmap:不使用 GUI 时无法创建 QPixmap
参考本文