Dompdfを使用してHTMLをPHPでPDFに変換する

PDFは、固定レイアウト文書内のテキストや画像を説明するためにアドビシステ PDFは、webアプリケーション内のデータやテキストコンテンツの束をダウンロードするために使用されます。 PDFファイル形式は、ファイル内のテキストまたはHTMLコンテンツをダウンロードするのに最適な選択です。 WebページコンテンツをPDFファイルとしてダウンロードする際には、HTMLをPDFに変換する必要があります。 このチュートリアルでは、HTMLをPDFに変換し、PHPを使用してPDFファイルを生成する方法を説明します。

Dompdfは、HTMLをPDF文書に変換する簡単な方法を提供するPHPライブラリです。 Dompdfライブラリを使用すると、PHPのHTMLページからPDFを簡単に生成できます。 このサンプルコードは、WEBアプリケーションにPDF生成機能を実装し、Dompdfを使用してPHPでHTMLをPDFに変換するのを簡単にするのに役立ちます。

Dompdfのインストールとセットアップ

GitHubからdompdfの安定版リリースをダウンロードします。 ダウンロードしたdompdfアーカイブのバージョンを抽出し、Dompdfを使用するディレクトリに配置します。

: Dompdfライブラリを別途ダウンロードする必要はなく、必要なファイルはすべてソースコードパッケージに含まれています。

Dompdfクラスのインスタンス化

Dompdfクラスを使用するには、PHPスクリプトにオートローダーを含める必要があります。 Dompdfクラスをインスタンス化して使用するには、次のPHPコードを使用します。

// Include autoloader 
require_once 'dompdf/autoload.inc.php';
// Reference the Dompdf namespace
use Dompdf\Dompdf;
// Instantiate and use the dompdf class
$dompdf = new Dompdf();

基本的な使い方(HTMLからPDFへの変換)

次の例は、Dompdfを使用してHTMLを変換し、最小限の設定でPDFを生成する方法を示しています。

  • DompdfクラスのloadHtml()メソッドでHTMLコンテンツを指定します。
  • render()メソッドを使用してHTMLをPDFとしてレンダリングします。
  • stream()メソッドを使用して、生成されたPDFをブラウザに出力します。
// Load HTML content 
$dompdf->loadHtml('<h1>Welcome to CodexWorld.com</h1>');
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF to Browser
$dompdf->stream();

高度な使い方

Dompdfライブラリを使用すると、簡単にPDF作成の機能を強化することができます。 次のコードは、HTMLファイル(pdf-content.html)からPDFを生成します。

  • PHPのfile_get_contents()関数を使用してHTMLファイルからコンテンツを取得します。
  • DompdfクラスのloadHtml()メソッドを使用してHTMLコンテンツをロードします。
  • Dompdfクラスのstream()関数を使用してPDF出力を制御します。
  • $filename – (文字列)PDFファイルの名前。
  • $options – (配列)ヘッダーオプション。
  • Attachment – 1 = ダウンロードと0=プレビュー
// Load content from html file 
$html = file_get_contents("pdf-content.html");
$dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$dompdf->render();
// Output the generated PDF (1 = download and 0 = preview)
$dompdf->stream("codexworld", array("Attachment" => 0));

Dompdf便利なメソッド

Dompdfライブラリは、PDFの作成を設定するためのさまざまなメソッドとオプションを提供します。 Dompdfクラスの便利なメソッドのいくつかは、一般的にPDF機能にHTMLを統合するために使用されている以下に与えられています。

loadHtml():HTMLコンテンツをロードします。

  • $str(文字列)-必須です。 ロードするHTMLを指定します。
  • $encoding(string)-オプションです。 エンコードを指定します。

loadHtmlFile():HTMLファイルからコンテンツをロードします。

  • $ファイル(文字列)-必須です。 ロードするファイル名またはurlを指定します。Output():PDFを文字列として返します。
    • $オプション(配列)-オプション。 コンテンツストリームの圧縮を有効にするかどうかを指定します。 (圧縮=>1または0)

    render():HTMLをPDFにレンダリングします。

    setBasePath():ベースパスを外部スタイルシートと画像を含めるように設定します。

    • $basePath(string)–外部リソースUrlをロードするときに使用されるベースパス。

    setPaper():用紙サイズ&の向きを設定します。

    • $サイズ(文字列/配列–-‘letter’、’legal’、’A4’など
    • $orientation(string)–’portrait’または’landscape’。

    stream():PDFをクライアントにストリーミングします。

    • $filename(文字列)-ストリーミングするファイルの名前を指定します(なし。pdf拡張子)。
    • $options(array)–
      • ‘compress’=>1または0–コンテンツストリームの圧縮を有効にします。
      • ‘Attachment’=>1=ダウンロードまたは0=プレビュー

    結論

    このチュートリアルでは、Phpを使用してDompdfを使用してHTMLをPDFに変換する簡単な方法を提供しようとしました。 このコード例は、PHPでPDFを生成するために最も使用される設定オプションを示しています。 必要に応じてDompdf設定オプションを使用して機能を簡単に拡張できます。 Dompdfライブラリを含むすべての必要なファイルを取得するには、ソースコードをダウンロードします。

    実装のヘルプを取得したり、このスクリプトの機能を変更または強化したりしますか? 有料サービスリクエストの送信

    このスクリプトについてご質問がある場合は、QAコミュニティに送信してください-質問をする

Write a Comment

メールアドレスが公開されることはありません。