(摘) Wkhtmltox网页转换PDF

声明:内容源自网络,版权归原作者所有。若有侵权请在网页聊天中联系我

网页要实现打印除了利用浏览器本身的功能以外,就是将html转换为pdf,然后pdf就可以打印可者另存。比浏览器自带的功能强大更多。

wkhtmltopdf 是一个强大的开源工具,它能将HTML网页直接转换为高质量的PDF文档。
wkhtmltopdf官方网站下载地址:https://wkhtmltopdf.org/downloads.html ,提供了各个常用OS的版本。

基本使用:
wkhtmltopdf input.html output.pdf
wkhtmltopdf –page-size A4 http://example.com/ myfile.pdf

通常你需要静默输出: wkhtmltopdf -q –page-size A4 http://example.com/ myfile.pdf

设置页面大小A4,上下左右边界,headerhtml和footerhtml定义页眉页脚:
wkhtmltopdf –page-size A4 –margin-top 10mm –margin-right 10mm –margin-bottom 10mm –margin-left 10mm –footer-html footer.html input.html output.pdf

更多用法可以参考官方: https://wkhtmltopdf.org/usage/wkhtmltopdf.txt


除了使用HTML文件外,还可以直接在命令行中指定文本作为页眉和页脚:

--header-center: 设置中心对齐的页眉文本。
--footer-center: 设置中心对齐的页脚文本。
--header-font-name: 设置页眉字体名称。
--footer-font-name: 设置页脚字体名称。
--header-font-size: 设置页眉字体大小。
--footer-font-size: 设置页脚字体大小。
--header-spacing: 设置页眉与内容之间的间距。
--footer-spacing: 设置页脚与内容之间的间距。

例如:

wkhtmltopdf \
  --header-center "Header Text" \
  --footer-center "Page [page] of [toPage]" \
  --header-font-name "Arial" \
  --footer-font-name "Arial" \
  --header-font-size 10 \
  --footer-font-size 10 \
  --header-spacing 5 \
  --footer-spacing 5 \
  index.html output.pdf
[page] 和 [toPage] 是特殊占位符,分别表示当前页码和总页数。
您可以使用 --header-left, --header-right, --footer-left, --footer-right 来设置左右对齐的文本。
您也可以使用 --header-line 和 --footer-line 来添加一条横线作为分割线。