模板页脚中的 C# 增量号



我正在使用selectPDF库的模板页脚,该库有自己的内置属性{{page_number}}和{{total_pages}}。选择PDF

var footerText = $"My Export {exportJobIdIdentifier} - Page {{page_number}} of {{total_pages}}  ";

var footerTextElement = new PdfTextElement(0, 0, doc.Pages[0].ClientRectangle.Width, 30, footerText, font)
        {
            VerticalAlign = PdfTextVerticalAlign.Middle
        };
doc.Footer = doc.AddTemplate(footerTextElement.Width, footerTextElement.Height);
doc.Footer.Add(footerTextElement);

这将创建一个模板页脚,并将自动对 pdf 的每一页进行编号。

我想修改模板并在那里显示递增的数字,所以创建了新元素:

   counterMessages++;
   var footerMessageCount = $"showing {counterMessages} from {totalNumMessages} messages";
   var footerMessagecounter = new PdfTextElement(doc.Pages[0].ClientRectangle.Width - 140, doc.Pages[0].ClientRectangle.Height - 5, doc.Pages[0].ClientRectangle.Width / 2, 30, footerMessageCount, font)
   {
      VerticalAlign = PdfTextVerticalAlign.Middle
   };
  doc.Footer.Add(footerMessagecounter);

问题是它在每一页上打印出 1.2.3.4 的 (counterMessages(,所以我看不到数字,这是因为我们创建了一个将在每页上重复的模板。有没有办法克服这个问题并直接在每个页面上增加整数?

所以我使用以下解决方案得到了它,我使用了自定义页脚属性

      PdfPage page2 = doc.Pages[countMessages-1];
      PdfTemplate customFooter = doc.AddTemplate(
      page2.PageSize.Width, 30);
      PdfHtmlElement customHtml = new PdfHtmlElement(
      $"showing {countMessages} from {totalNumMessages} messages",
      string.Empty);
      customFooter.Add(customHtml);
      page.CustomFooter = customFooter;

这将在每个页面上打印一个新的自定义页脚模板,并在每个页面上增加数字

相关内容

  • 没有找到相关文章

最新更新