オープンソースの Python HTML から PDF への変換ライブラリ
HTML を PDF ドキュメントに変換するには、この無料のオープンソース Python ライブラリを試してください。
xhtml2pdf とは何ですか?
Xhtml2pdf は、HTML コンテンツを PDF ドキュメントに変換するために設計されたオープン ソースの Python ライブラリで、元の構造とスタイルを維持することに主眼を置いています。この強力なライブラリは、Web ページをプロフェッショナルな印刷対応の PDF にシームレスに変換します。
xhtml2pdf を使い始める
xhtml2pdf をインストールして使用するには、Python バージョン 3.8.0 以上が必要です。まず Python をインストールし、次に以下のコマンドを使用して、pip と 仮想環境 を使用してマシンに xhtml2pdf をインストールします。
リナックス
python -m venv env
. env/bin/activate
pip install xhtml2pdf
MacOS
python -m venv env
. env/bin/activate
pip install xhtml2pdf
ウィンドウズ
python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf
HTML 文字列を PDF ドキュメントに変換する
xhtml2pdf ライブラリを使用して、HTML 文字列を PDF ドキュメントに変換できます。完全な HTML コンテンツを変数に格納し、その変数を関数 pisa.CreatePDF(html_content, dest, encoding) に渡します。このメソッドは、渡した BytesIO オブジェクト内でハイパーリンク、画像、その他の要素が管理されている PDF コンテンツを提供します。最後に、BytesIO オブジェクトに格納されているデータを使用して PDF ファイルを作成します。詳細については、以下のコード スニペットを確認してください。
出力
以下のスクリーンショットは、HTML 文字列から変換された PDF ドキュメントを示しています。
HTML ファイルを PDF ドキュメントに変換する
xhtml2pdf ライブラリを使用して HTML ファイルを PDF に変換することもできます。HTML ファイルの内容を変数に読み込み、その変数を pisa.CreatePDF(html_content, dest, encoding) メソッドに渡します。その後、前の例で共有したのと同じ手順に従って、以下のコード スニペットに示すように、BytesIO オブジェクトを使用して PDF ドキュメントを作成します。
出力
以下のスクリーンショットは、HTML ファイルから変換された PDF ドキュメントを示しています。
結論
要約すると、xhtml2pdf は、ハイパーリンク、画像、外部スタイルシートを処理しながら HTML を PDF ドキュメントに変換するオープンソースの Python ライブラリです。xhtml2pdf には、HTML を PDF に変換する際のフロントエンド ライブラリが含まれていないため、HTML に {{name}} などの変数がある場合、実際の値ではなく、HTML に記述されているとおりに PDF に表示されます。
さらに、コンテンツを取得するために JavaScript に依存する動的ページのサポートが欠如しており、複雑な CSS 指定のレイアウトに従いません (たとえば、CSS で指定された色、フォント サイズなどを適用しますが、パディング、マージン、表示などのレイアウト CSS は無視します)。これらの制約にもかかわらず、xhtml2pdf は、単純な静的 HTML から PDF への変換のニーズにとって依然として貴重なツールです。