2

xhtml2pdfPythonパッケージを使用してPDFを生成します。出力が最適ではありません。ページに画像とテキストを配置するためにフローティングdivを使用します。HTMLではこれは機能しますが、PDFレンダリングの後、画像とテキストが互いに下に配置されます。これは私が望んでいることではありません。Webサーフィンから、xhtml2pdfで使用されるReportLabパッケージはフローティングdivを処理できないことがわかりました。回避策はありますか?QTを介してWebkitレンダリングを試しましたが、結果のPDFの品質が低く、文字間隔が完全に間違っています。

4

1 に答える 1

1

xhtml2pdf で必要な結果が得られない場合は、ReportLab を直接使用することをお勧めします。ReportLab には、書式付きテキストを簡単に作成できる ReportLab 独自のマークアップ言語である RML のサポートが含まれており、Platypus と呼ばれるサポート ライブラリがあり、Python オブジェクトを使用してドキュメント パーツとページ レイアウトを表現することでレイアウトをかなり単純化します。

ちなみに、問題が発生している理由は、xhtml2pdf が本質的に、画面に直接出力するのではなく、PDF に出力する HTML レンダリング エンジンのように動作する必要があるためです。ブラウザー用の優れたレンダリング エンジンを作成するのに長い時間と多くの労力がかかったように、xhtml2pdf も同様の品質を実現するには多くの労力が必要になるようです。これは、xhtml2pdf が悪いと言っているのではなく、ブラウザーでレンダリングするのと同じくらい良いものになるには時間がかかるということです。PDF 出力自体が本当に興味がある場合は、ReportLab を使用すると思います。直接の方がよい選択です。

于 2012-05-09T13:35:36.420 に答える