wkhtmltopdf 生成目录,修改目录样式


介绍

太新的wkhtmltopd版本不支持使用toc来生成目录,wkhtmltopdf 0.12.3可以,它根据网页中的H1、H2...标签来确定目录层级,所以网页中要准备好。

wkhtmltopdf 12.03版本下载 http://wkhtmltopdf.org/

使用

wkhtmltopdf  toc xxx.html xxxx.pdf  在xxxx.pdf 中生成目录页,如下所示:

格式不是很好看,二级目录要比一级目录小,如何修改目录格式呢?

1.获取目录默认样式

使用 wkhtmltopdf --dump-default-toc-xsl >myself.xsl 将目录默认的样式输入到myself.xsl中,查看myself.xsl可以发现,目录默认样式中Table of Contents (h1)和一级目录(ul) 用的都是20px arial的字体样式,二级目录的字体大小是一级的80%

2.修改默认的xsl 

默认的 修改后的
<style>
  h1 {
    text-align: center;
    font-size: 20px;
    font-family: arial;
  }
  div {border-bottom: 1px dashed rgb(200,200,200);}
  span {float: right;}
  li {list-style: none;}
  ul {
    font-size: 20px; font-family: arial;
  }
  ul ul {font-size: 80%; }
  ul {padding-left: 0em;}
  ul ul {padding-left: 1em;}
  a {text-decoration:none; color: black;}
</style>
<style>
  h1 {
    text-align: left;
    font-size: 20px;
    font-family: calibri;
  }
  div {border-bottom: 1px dashed rgb(200,200,200);}
  span {float: right;}
  li {list-style: none;}
  ul {
    font-size: 12px; font-family: calibri; font-weight:bold
  }
  ul ul {font-size: 90%; }
  ul {padding-left: 0em;padding-top:5px;}
  ul ul {padding-left: 1em;}
  a {text-decoration:none; color: black;}
</style>

 3.使用修改后的xsl生成目录 

wkhtmltopdf toc --xsl-style-sheet 'myself.xsl' xxx.html xxxx.pdf

默认的

修改后的

参考:https://www.jianshu.com/p/1a0fb28e6bec

https://www.cnblogs.com/mianbaoshu/p/13366074.html

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM