3

CFDocument タグを使用して生成した PDF があります。PDFを生成し、「プリンター」アイコンをクリックして印刷ダイアログをポップアップ表示すると。ページのサイジングと処理については、「フィット」または「特大ページを縮小」に設定されている場合、正常に印刷されます。[実際のサイズ] を選択すると、ヘッダーがページからはみ出して切り取られます。Windows 7 で ColdFusion 11 を使用しています。

これを再現するために、すべてのスタイルを削除し、次の基本的なコードで簡単なテストを行いました。

<cfdocument format="PDF" 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>

次の PDF が生成されます。 PDF生成

次に、「プリンター」アイコンをクリックすると、プリンター設定がポップアップ表示されます。 特大ページを縮小

ダイアログ ボックスのプレビュー イメージをよく見ると、ヘッダー テキストがドキュメント内にあることがわかります。代わりに「実際のサイズ」を選択すると、次のようになります。 実際のサイズ

プレビューを見ると、今度はすべてが上に移動し、ヘッダーの一部がドキュメントの外側にあることがわかります。その結果、ヘッダーの半分が切り落とされ、印刷時に判読できなくなります。

なぜこれが起こっているのか、それを修正する方法を知っている人はいますか?

4

2 に答える 2

1

これを修正するために、CFDocument の pageType 属性とともに、pageWidth と pageHeight をいじってみました。

<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インチにしました.

于 2016-01-01T18:33:19.643 に答える
0

正直なところ、私にとって cfdocument タグを使用することは、まさに残忍なことでした。外部ツールを使用して同じことができる場合 (つまり、ビジネスおよびシステム管理者がそれらの使用を許可している場合) は、WKHTMLToPDF を使用することをお勧めします。詳細については、http ://wkhtmltopdf.org/ をご覧ください。

このツールのおかげで、私たちは幸運に恵まれたと言わざるを得ません。環境で重要な場合は、プラットフォーム間でも機能します。

お役に立てれば。

于 2015-12-31T16:36:21.837 に答える