2017-01-05 33 views
4

我希望这个命令在生成的pdf的引导下显示1/1,但没有...任何想法?wkhtmltopdf:显示页脚上的内容,例如页码

wkhtmltopdf --footer-center [page]/[topage] www.google.com /tmp/foobar.pdf 

版本:0.12.2.4在Linux上

+0

会发生什么情况?只显示'/'或什么也不显示? –

+0

@RafaelDantas不显示任何内容 – ziiweb

+0

为了测试目的,请使用--header-center并查看是否正常工作。 (尝试在属性文本中加双引号) –

回答

4

I t眨眼这个问题可能是由于版本0.12.2.4,否则,这个--footer-center [page]/[topage]命令将会做你的工作。

另外一个例子,我检查了substitutePdfVariables()在body onload中被调用。

<!doctype html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <script> 
     function substitutePdfVariables() { 

      function getParameterByName(name) { 
       var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search); 
       return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); 
      } 

      function substitute(name) { 
       var value = getParameterByName(name); 
       var elements = document.getElementsByClassName(name); 

       for (var i = 0; elements && i < elements.length; i++) { 
        elements[i].textContent = value; 
       } 
      } 

      ['frompage', 'topage', 'page', 'webpage', 'section', 'subsection', 'subsubsection'] 
       .forEach(function(param) { 
        substitute(param); 
       }); 
     } 
    </script> 
</head> 
<body onload="substitutePdfVariables()"> 
    <p>Page <span class="page"></span> of <span class="topage"></span></p> 
</body> 
</html> 

这里Docs你可以找到更多关于页眉和页脚的变量。

+0

文档看起来已经过时了......并且关于linux版本的猜测看起来与之前的答案类似。 –

+0

@AmberBeriwal,我更换了文档超链接。我想从这个答案中,用户可以得到他们的答案。 –

+0

完美的家伙感谢 –

0

似乎是一个稳定的问题,但没有发生过的版本0.12.2.4稳定释放linuxdebianubuntu),但只是为了调试目的,在他们的存储库here中提到了

这里是工作的屏幕截图为version0.12.4

版本0.12.4foobar1

,或者你可以添加由下面的代码片段页码添加脚注提到here

<html><head><script> 
    function subst() { 
    var vars={}; 
    var x=window.location.search.substring(1).split('&'); 
    for (var i in x) {var z=x[i].split('=',2);vars[z[0]] = unescape(z[1]);} 
    var x=['frompage','topage','page','webpage','section','subsection','subsubsection']; 
    for (var i in x) { 
     var y = document.getElementsByClassName(x[i]); 
     for (var j=0; j<y.length; ++j) y[j].textContent = vars[x[i]]; 
    } 
    } 
    </script></head><body style="border:0; margin: 0;" onload="subst()"> 
    <table style="border-bottom: 1px solid black; width: 100%"> 
    <tr> 
     <td class="section"></td> 
     <td style="text-align:right"> 
     Page <span class="page"></span> of <span class="topage"></span> 
     </td> 
    </tr> 
    </table> 
    </body></html>