wicked_pdf:是否可以让页眉仅显示在第一页而页脚仅显示在最后一页?

tha*_*way 2 ruby-on-rails wkhtmltopdf wicked-pdf

现在我已经:header => {:html => {:template => "layouts/pdf_header.html.erb"}}把事情做好了。我可以传递一些仅在文档第一页上显示标题的内容吗?

我也可以对页脚执行此操作吗?这在这里几乎更重要,因为当每次长度和页数不同时,我真的想不出任何其他方法可以让页脚动态地粘在页面底部。

mas*_*sta 5

一些快速的 JavaScript 可以解决这个问题。遵循wkhtmltopdf上“页脚和页眉”下列出的样板

这些分别是您的页眉和页脚模板。要跟踪的关键变量是“页面”,可从 URL 哈希中获取。你的标题看起来像这样:

<div class="headerContent" style="display:none">
   ...my awesome html
    <hr />
</div>
<script type="text/javascript">
    var headerCheck = function() {
      var x=document.location.search.substring(1).split('&');
      for (var i in x) {
        if(x[i] == "page=1")
          document.getElementsByClassName("headerContent")[0].style.display = "block";
       }
     }();
</script>
Run Code Online (Sandbox Code Playgroud)

同样,对于页脚,代码将如下所示:

<div class="footerContent" style="display: none">
    ...awesome footer html
</div>
<script type="text/javascript">
    var footerCheck = function() {
       var x=document.location.search.substring(1).split('&');
       var currentPage = 1;
       for (var i in x) {
         var z=x[i].split('=',2);
         if(z[0] == "page")
           currentPage = unescape(z[1]);
         if(z[0] == "topage" && currentPage == unescape(z[1]))
           document.getElementsByClassName("footerContent")[0].style.display = "block";
        }
     }();
 </script>
Run Code Online (Sandbox Code Playgroud)