本文介绍了在第一页隐藏页脚的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以隐藏特定页面的 TuesPechkin 文档的页眉/页脚.我希望在 PDF 文档的第一页上忽略页眉和页脚,但找不到实现此目的的方法.

Is it possible to hide the header/footer of a TuesPechkin document for a specific page. I'd like the header and footers to be ignored on the first page of the PDF document but can't find a way to achieve this.

文件设置如下:

var document = new HtmlToPdfDocument
        {
            GlobalSettings =
            {
                ProduceOutline = true,
                DocumentTitle = "My Report",
                PaperSize = PaperKind.A4, // Implicit conversion to PechkinPaperSize
                Margins =
                {
                    All = 1.375,
                    Unit = Unit.Centimeters
                }
            },
            Objects =
            {
                new ObjectSettings
                {
                    HtmlText = html,
                    WebSettings = new WebSettings {UserStyleSheet = "~/Content/Site.css"},
                    HeaderSettings = new HeaderSettings()
                        {
                            FontSize = 8,
                            LeftText = "My report",
                            RightText = "2014"
                        },
                    FooterSettings = new FooterSettings()
                    {
                        FontSize = 8,
                        CenterText = "Page [page] of [topage]"
                    }
                }
            }
        };

推荐答案

API 似乎不支持这一点.但是,我在 here 找到了 WKHTMLTOPDF 的解决方法这可能对你有用.

The API doesn't seem to support this. However, I found a workaround here for WKHTMLTOPDF which might work for you.

将以下 HTML 放入文件中,并在页脚设置中引用此文件.

Put the following HTML in a file and reference this file in your footer settings.

<html>
<head>
<script>
   function subst() {
      var vars = {};

      // explode the URL query string
      var x = document.location.search.substring(1).split('&');

      // loop through each query string segment and get keys/values
      for (var i in x)
      {
         var z = x[i].split('=',2);
         vars[z[0]] = unescape(z[1]);
      }

      // an array of all the parameters passed into the footer file
      var x = ['frompage', 'topage', 'page', 'webpage', 'section', 'subsection', 'subsubsection'];

      // each page will have an element with class 'section' from the body of the footer HTML
      var y = document.getElementsByClassName('section');
      for(var j = 0; j < y.length; j++)
      {
         // if current page equals total pages
         if (vars[x[2]] == vars[x[1]])
         {
            y[j].innerHTML = "I'm a footer only on the last page";
         }
      }
   }
</script>
</head>
<body onload="subst()">
   <div class="section"></div>
</body>
</html>

这篇关于在第一页隐藏页脚的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-29 21:39
查看更多