如何使用打补丁的 qt 安装 wkhtmltopdf?
How to install wkhtmltopdf with patched qt?
我想把html转成pdf,我用的是wkhtmltopdf。
但是打印尺寸比我想象的要小。
我想尝试 --disable-smart-shrinking
选项,但出现
之类的错误
$ xvfb-run -- /usr/bin/wkhtmltopdf --disable-smart-shrinking $INPUT $OUTPUT
The switch --disable-smart-shrinking, is not support using unpatched qt, and will be ignored.Loading page (1/2)
Printing pages (2/2)
Done
也许我必须安装带有补丁qt的wkhtmltopdf,但我不知道如何安装。
我看到了以下尺寸,但是 gitorious.org 不起作用。
wkhtmltopdf patched qt?
我的OS是Ubuntu14.04,wkhtmltopdf版本是0.12.2.1
如果您知道打印较小的其他原因,请告诉我。谢谢。
您可以使用 --disable-smart-shrinking
选项安装 wkhtmltopdf
wkhtmltopdf.
下载并安装。
http://wkhtmltopdf.org/usage/wkhtmltopdf.txt
文档说
wkhtmltopdf 0.12.2.1 (with patched qt)
和
--disable-smart-shrinking Disable the intelligent shrinking strategy
used by WebKit that makes the pixel/dpi
ratio none constant
这个简单的解决方案(不需要安装 xvfb,既不需要编译 QT,也不需要 wkhtmltopdf)在我的 Debian Jessie 服务器上非常有效:
cd mytmpfolder
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
sudo tar xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
sudo mv wkhtmltox/bin/wkhtmlto* /usr/bin/
#create simple html test file
echo "<html><body>test</body></html>" >> test.html
#perform conversion
sudo wkhtmltopdf --disable-smart-shrinking --lowquality --enable-external-links --enable-internal-links test.html test.pdf
在 Ubuntu 16.04.
上安装版本 0.12.3 的步骤
因为我浪费了太多时间来追踪它,这里是给其他绊脚石的人:
cd ~
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.3/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
tar vxf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
cp wkhtmltox/bin/wk* /usr/local/bin/
您可以通过以下方式确认:
$ wkhtmltopdf --version
wkhtmltopdf 0.12.3 (with patched qt)
顺便说一句,我选择了 0.12.3 而不是 0.12.4,因为讨论了一个奇怪的页面大小问题 here。
以下是使用 shell 脚本为 Ubuntu 14.04、15.04、16.04、18.04 和 20.04 安装 wkhtmltopdf 0.12.5(带有修补的 qt)的简单步骤。
第 1 步。创建一个 shell 文件
cd /tmp && nano install_wkhtmltopdf.sh
第 2 步。粘贴以下代码
WKHTMLTOX_X64=https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.trusty_amd64.deb
WKHTMLTOX_X32=https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.trusty_i386.deb
sudo apt-get install wget git python-pip gdebi -y
if [ "`getconf LONG_BIT`" == "64" ];then
_url=$WKHTMLTOX_X64
else
_url=$WKHTMLTOX_X32
fi
sudo wget $_url
sudo gdebi --n `basename $_url`
sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
步骤 3. 使文件可执行
sudo chmod +x install_wkhtmltopdf.sh
步骤 4. 执行 shell 脚本
./install_wkhtmltopdf.sh
我想把html转成pdf,我用的是wkhtmltopdf。
但是打印尺寸比我想象的要小。
我想尝试 --disable-smart-shrinking
选项,但出现
$ xvfb-run -- /usr/bin/wkhtmltopdf --disable-smart-shrinking $INPUT $OUTPUT
The switch --disable-smart-shrinking, is not support using unpatched qt, and will be ignored.Loading page (1/2)
Printing pages (2/2)
Done
也许我必须安装带有补丁qt的wkhtmltopdf,但我不知道如何安装。
我看到了以下尺寸,但是 gitorious.org 不起作用。
wkhtmltopdf patched qt?
我的OS是Ubuntu14.04,wkhtmltopdf版本是0.12.2.1
如果您知道打印较小的其他原因,请告诉我。谢谢。
您可以使用 --disable-smart-shrinking
选项安装 wkhtmltopdf
wkhtmltopdf.
下载并安装。
http://wkhtmltopdf.org/usage/wkhtmltopdf.txt
文档说
wkhtmltopdf 0.12.2.1 (with patched qt)
和
--disable-smart-shrinking Disable the intelligent shrinking strategy used by WebKit that makes the pixel/dpi ratio none constant
这个简单的解决方案(不需要安装 xvfb,既不需要编译 QT,也不需要 wkhtmltopdf)在我的 Debian Jessie 服务器上非常有效:
cd mytmpfolder
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
sudo tar xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
sudo mv wkhtmltox/bin/wkhtmlto* /usr/bin/
#create simple html test file
echo "<html><body>test</body></html>" >> test.html
#perform conversion
sudo wkhtmltopdf --disable-smart-shrinking --lowquality --enable-external-links --enable-internal-links test.html test.pdf
在 Ubuntu 16.04.
上安装版本 0.12.3 的步骤因为我浪费了太多时间来追踪它,这里是给其他绊脚石的人:
cd ~
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.3/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
tar vxf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
cp wkhtmltox/bin/wk* /usr/local/bin/
您可以通过以下方式确认:
$ wkhtmltopdf --version
wkhtmltopdf 0.12.3 (with patched qt)
顺便说一句,我选择了 0.12.3 而不是 0.12.4,因为讨论了一个奇怪的页面大小问题 here。
以下是使用 shell 脚本为 Ubuntu 14.04、15.04、16.04、18.04 和 20.04 安装 wkhtmltopdf 0.12.5(带有修补的 qt)的简单步骤。
第 1 步。创建一个 shell 文件
cd /tmp && nano install_wkhtmltopdf.sh
第 2 步。粘贴以下代码
WKHTMLTOX_X64=https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.trusty_amd64.deb
WKHTMLTOX_X32=https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.trusty_i386.deb
sudo apt-get install wget git python-pip gdebi -y
if [ "`getconf LONG_BIT`" == "64" ];then
_url=$WKHTMLTOX_X64
else
_url=$WKHTMLTOX_X32
fi
sudo wget $_url
sudo gdebi --n `basename $_url`
sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
步骤 3. 使文件可执行
sudo chmod +x install_wkhtmltopdf.sh
步骤 4. 执行 shell 脚本
./install_wkhtmltopdf.sh