Ubuntu12.04编译wkhtml2pdf
Ubuntu上直接下载wkhtmltopdf,解压后执行命令操作确实可以实现截屏,但存在从html直接转为pdf时的部分样式、字体、的错位和色差。
由于mac osx上使用wkhtmltopdf需要编译qt,所以老老实实的阅读了README_WKHTMLTOPDF,并按照官方的操作步骤走了一遍(详见osx10.8编译wkhtmltopdf),发现木有Ubuntu上之前的那些个失真现象,所以在Ubuntu上试了下qt的整套编译,发现编译了qt以后再本地编译生成wkhtmltopdf也不会出现失真现象,Nice!
详细编译步骤如下:
1)编译环境:X11, gcc, git, openssl;Ubuntu下还需要openssl build-essential xorg libssl-dev libxrender-dev(否则之后的会报各种bug, warning,编译失败)
|
1
|
sudo apt-get install openssl build-essential xorg git-core git-doc libssl-dev [..] |
2)安装qt相关的依赖
|
1
|
sudo apt-get build-dep libqt4-gui libqt4-network libqt4-webkit |
3)下载qt
|
1
|
git clone git://gitorious.org/+wkhtml2pdf/qt/wkhtmltopdf-qt.git wkhtmltopdf-qt |
4)编译qt
|
1
2
3
4
5
6
7
|
cd wkhtmltopdf-qtQTDIR=. ./bin/syncqt ##这个我也不确定有没有用,因为中途编译失败过,就不晓得这个参数有没有起效cat ../wkhtmltopdf/static_qt_conf_base ../wkhtmltopdf/static_qt_conf_linux | sed -re 's/#.*//'./configure -nomake tools,examples,demos,docs,translations -opensource -prefix ../wkqtmake -j3make installcd .. |
5)如果上一步成功的话,当前目录下会有一个wkqt文件夹,否则表示编译失败(原因可能是qt编译相关的依赖没有安装,请按步骤1检查下自己的安装环境)。wkqt成功生成以后,接下来开始编译wkhtmltopdf
|
1
2
3
4
|
git clone git://github.com/antialize/wkhtmltopdf.git wkhtmltopdfcd wkhtmltopdf../wkqt/bin/qmakemake -j3 |
6)编译成功以后,可以检查下wkhtmltopdf和wkhtmltoimage命令是否生成
|
1
2
|
wkhtmltopdf --versionwkhtmltoimage --version |
参考https://github.com/antialize/wkhtmltopdf 中 README_WKHTMLTOPDF(Row435附近)
浙公网安备 33010602011771号