12

私はしばらくの間、PDF を作成し、Python 3 で現在のプロジェクトと統合できるものを探していました。通常の参照はReportlabまたはpyPDFです。しかし、これら 2 つはまだ Python 3 と互換性がありません。2010 年以降、Reportlab でポートについて議論が行われているようですが、今日現在、ポートへの参照は見つかりません。

もう 1 つの方法は、Python 3 の中間形式を使用して別のプログラムで使用し、サブプロセス呼び出しでラップすることです。Relatorioはこれを行います。似たようなことをするか、XHTML/CSS を生成してxhtml2pdfを使用することを検討するかもしれません。

4

7 に答える 7

5

ブロックに有望に見える新しい子供がいます。改ページなどの印刷 css 機能をサポートしています。

weasyprint を試す

于 2013-01-24T16:06:52.520 に答える
4

The cairo library with the pycairo (not py2cairo, that's for python 2) binding works with python 3.x and can produce PDF output (among others).

于 2012-08-18T19:05:28.550 に答える
3

最終的に、pycario/pango で作業するのは難しいと思います。pycairo には png のメソッドがいくつかありません。PIL は python3 ではまだサポートされておらず、多くの依存関係 (pycario を使用するというアイデア) も持っているため、移植することになります。 python 2 ライブラリから python 3 への変換は、あまり高度ではありませんが、いくつかの基本的な pdf のジョブを実行します。これはpy3fpdfと呼ばれます。

---更新--

p3fpdf は n_n' というジョブを完了できなかったことが判明しました。話の終わりを告げるために、私はpypfopと呼ばれるapache fopのプリプロセッサを作成しました。私は最近、完全なプロジェクトと分離しました。これは、特にドキュメントで進行中の作業であり、例は説明に役立つ場合があります。

于 2012-08-25T18:28:34.853 に答える
2

フリーソフトではありませんが、HTML/CSS ルートを取得し、princeを使用できます。

ソースが複雑すぎない場合は、http://code.activestate.com/recipes/189858-python-text-to-pdf-converter/のように純粋な python ソリューションを試すこともできます。

于 2012-08-18T18:43:26.777 に答える
0

Pillow は、PIL から Python 3 への非常に優れたポートであり、Debian の実験的なバージョンと Ubuntu 13.04 で利用できるようになりました。これで ReportLab の Python 3 ポートのブロックが解除されるはずです。@nakagami: あなたの github レポートは私には失敗しているようですpython3 setup.py buildが、浅いかもしれません。あなたの港はどのくらい公式ですか?RL の人々に連絡して、彼らがあなたの仕事に興味があるかどうかを確認しましたか? 私は彼らのコードが公共のVCで利用できるとは思わない.

于 2013-02-12T15:24:35.377 に答える
0

2.7 および 3.3 への移植は現在進行中です。

https://github.com/nakagami/reportlab

PIL はまだ Python3 に移植されていないため、ReportLab は完全には機能しません。

于 2013-01-14T09:55:49.370 に答える
0

シェルアウトしてtext2pdfを呼び出すことができます

于 2012-08-18T20:41:00.977 に答える