CFDocument PDF - 打印时标题会被截断

时间:2015-12-23 21:47:36

标签: pdf printing coldfusion cfdocument

我有一个通过CFDocument标签生成的PDF。当它生成PDF并且您单击"打印机"图标以弹出打印对话框。对于Page Sizing&处理是否设置为" Fit"或"缩小超大页面",打印正常。如果"实际尺寸"选择然后标题从页面移开并被切断。 我在Windows 7上使用ColdFusion 11。

为了重新创建这个,我删除了所有样式并使用以下基本代码进行了简单的测试:

   <li ng-repeat="p in products">
    <p ng-repeat="brand in (p.brands | customSplit)">{{ brand }}{{$last ? '' : ', '}}</p>
  </li>

生成以下PDF: PDF Generated

然后我点击&#34;打印机&#34;弹出打印机设置的图标: Shrink Oversized Pages

如果仔细查看对话框中的预览图像,可以看到标题文本位于文档中。 现在,如果我选择&#34;实际尺寸&#34;相反,它给出以下内容: Actual Size

如果您查看预览,这次您可以看到所有内容都向上移动并且标题部分位于文档之外,这导致标题的一半被切断并且在打印时难以辨认。

任何人都知道为什么会发生这种情况以及如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

为了解决这个问题,我最终使用了pageWidth和pageHeight以及CFDocument中的pageType属性。

<cfdocument format="PDF" pageType="custom" pageWidth="8.5" pageHeight="10.75" saveAsName="test_#dateFormat(now(),'yyyymmdd')#T#timeFormat(now(),'hhmmss')#.pdf">
   <cfdocumentitem type="header">HEADER</cfdocumentitem>
   <cfdocumentsection>
       BODY
   </cfdocumentsection>
   <cfdocumentitem type="footer">
       #cfdocument.currentpagenumber# / #cfdocument.totalpagecount#
   </cfdocumentitem>
</cfdocument>

标准字母大小为8.5“X 11”(这是CFDocument中的默认值)所以我只是将高度略微调整为10.75“,即使我在打印对话框中单击”实际大小“,标题仍保留在页面边界内。 似乎有点奇怪,我必须这样做,使页眉适合页面,而不会被切断,但它的工作原理。进一步调整高度只会使标题太大而且看起来不太好,所以我选择10.75“。

答案 1 :(得分:0)

老实说,对我来说使用cfdocument标签一直都是残酷的。如果您可以使用外部工具执行相同操作(换句话说,如果您的业务和系统管理员允许您使用它们),我建议使用WKHTMLToPDF。您可以在此处找到有关此内容的更多信息:http://wkhtmltopdf.org/

我不得不说我们用这个工具好运了。如果在您的环境中重要,它也适用于跨平台。

希望这会有所帮助。