ホームページ  >  記事  >  バックエンド開発  >  PHPを使用してPDFファイルを処理する方法

PHPを使用してPDFファイルを処理する方法

WBOY
WBOYオリジナル
2023-06-19 14:41:023928ブラウズ

PDF ファイルは、ユニバーサル ファイル形式として、電子書籍、レポート、契約書などのさまざまなアプリケーション シナリオで広く使用されています。開発プロセスでは、PDF ファイルの生成、編集、読み取りなどの操作が必要になることがよくあります。 PHP はスクリプト言語として、これらのタスクを簡単に実行することもできます。この記事では、PHPを使用してPDFファイルを処理する方法を紹介します。

1. PDF ファイルの生成

PDF ファイルを生成するにはさまざまな方法がありますが、最も一般的なのは PDF ライブラリを使用することです。 PDF ライブラリは、PHP に PDF ドキュメント生成機能を提供する、PDF ドキュメントを生成するためのツールです。 PHP で最も一般的に使用される PDF ライブラリは、FPDF と TCPDF です。

  1. FPDF

FPDF は、ユーザーが PDF ドキュメントを動的に生成できるようにする、PHP ベースのオープンソース PDF ライブラリです。 FPDF はシンプルで使いやすく、漢字をサポートし、さまざまなフォントとページ レイアウト設定を提供します。

次は、FPDF を使用して単純な PDF ドキュメントを生成する例です:

require('fpdf.php');

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

上記のコードは、FPDF ライブラリを使用して単純な PDF ドキュメントを作成し、ページのフォント、サイズ、コンテンツを設定します。 、ブラウザに出力します。上記のコードを実行すると、生成された PDF ドキュメントがブラウザーで表示されます。

  1. TCPDF

TCPDF は、一般的に使用されているもう 1 つのオープン ソース PDF ライブラリです。FPDF と同様に、漢字のサポート、複数のフォント、ページ レイアウトなどの多くの機能も提供します。 。 設定。 FPDF と比較して、TCPDF はより強力であり、透かしの設定、画像の追加など、より機能的なインターフェイスを提供します。

以下は、TCPDF を使用して単純な PDF ドキュメントを生成する例です:

require_once('TCPDF/tcpdf.php');

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('John Doe');
$pdf->SetTitle('TCPDF Example');
$pdf->SetSubject('TCPDF Tutorial');

$pdf->SetFont('dejavusans', '', 14);
$pdf->AddPage();
$pdf->Write(5, 'Hello World');

$pdf->Output('example.pdf', 'I');

上記のコードは、TCPDF ライブラリを使用して単純な PDF ドキュメントを作成し、ページのプロパティ、フォント、サイズを設定します。コンテンツとブラウザへの出力。

2. PDF ファイルの編集

実際の開発では、ページコンテンツの追加、削除、移動、変更など、既存の PDF ファイルを編集する必要がよくあります。 PHP 自体は PDF ファイルを直接編集できませんが、成熟した PDF ライブラリの助けを借りて編集できます。

  1. FPDI

FPDI は、既存の PDF ドキュメントをインポートして再利用するためのメソッドを提供する PHP ライブラリです。 FPDI は PDF のすべてのページを読み取り、その後の編集や再利用の基礎として使用できます。

以下は、FPDI を使用して PDF ファイル ページを読み取り、ジャンプする例です。

require_once('fpdf/fpdf.php');
require_once('fpdi/fpdi.php');

$pdf = new FPDI();
$pageCount = $pdf->setSourceFile("example.pdf");
$pageId = 1;
$templateId = $pdf->importPage($pageId);

$pdf->AddPage();
$pdf->useTemplate($templateId,0,0);

// 访问导入的文档中的信息
$textWidth = $pdf->GetStringWidth('Hello World');
$pdf->SetFont('Arial', null, 14);
$pdf->SetTextColor(255, 0, 0);
$pdf->SetXY(105 - $textWidth / 2, 130);
$pdf->Write(0, 'Hello World');

$pdf->Output('example.pdf','I');

上記のコードは、FPDF ライブラリを使用し、FPDI メソッドを呼び出して既存の PDF ドキュメントを読み取り、指定したページにジャンプします。次に、フォント、文字色、座標を設定してブラウザに出力します。

  1. PDFlib

PDFlib は、ユーザーが PDF ファイルを動的に生成、編集、出力できるようにする、PHP 用の高度な PDF 生成ライブラリです。 PDFlib は、さまざまなテキスト フォント、複数の画像出力形式、ダイナミック グラフィックス、および標準 PDF 要素をサポートする豊富な機能セットを提供します。

以下は、PDFlib を使用して PDF ドキュメントを作成し、テキストを追加し、保存する例です。

$p = new PDFlib();

// 创建PDF文件
if ($p->begin_document("", "") == 0) {
    die("Error: " . $p->get_errmsg());
}

// 设置编码及页码
$p->set_info("Creator", "Hello World");
$p->set_info("Author", "John Doe");
$p->set_info("Title", "Hello World");

$p->begin_page_ext(595, 842, "");

// 加载字体
$font = $p->load_font("Helvetica", "winansi", "");

$p->setfont($font, 24.0);
$p->set_text_pos(50, 700);
$p->show("Hello, World!");

$p->end_page_ext("");
$p->end_document("");

// 保存到本地文件
file_put_contents("example.pdf", $p->get_buffer());

上記のコードは、PDFlib ライブラリを使用して新しい PDF ドキュメントを作成し、テキストを追加しますを作成し、それをローカル ファイルに保存します。

3. PDF ファイルの読み取り

PDF ファイルの読み取りは非常に重要な機能です。多くの場合、レポートの生成やデータの抽出など、PDF ファイルのコンテンツを読み取る必要があります。 PHP には、PDF ファイルの読み取り操作を実装するためのライブラリが多数用意されています。

  1. pdftotext

pdftotext は、PDF ドキュメントをテキスト形式に変換するためのツールです。 PHP から呼び出して PDF ファイルのテキスト コンテンツを取得できます。

次は、pdftotext ライブラリを使用して PDF ドキュメントを読み取り、テキストを抽出する例です。

$text = shell_exec('pdftotext example.pdf -');
echo $text;

上記のコードは、pdftotext ライブラリを使用して PDF ドキュメントを読み取り、そのテキスト コンテンツを出力します。ブラウザ。

  1. PDF パーサー

PDF パーサーは、既存の PDF ドキュメントからコンテンツを抽出する方法を提供する PHP ライブラリです。 PDF Parser は、PDF ドキュメント内のすべてのテキスト コンテンツを読み取り、処理しやすい形式に変換できます。

次は、PDF パーサーを使用して PDF ドキュメントを読み取り、テキストを抽出する例です。

require_once('vendor/autoload.php');

$parser = new SmalotPdfParserParser();
$pdf = $parser->parseFile('example.pdf');

$text = $pdf->getText();
echo $text;

上記のコードは、PDF パーサー ライブラリを使用して PDF ドキュメントを読み取り、そのテキスト コンテンツを出力します。ブラウザ。

概要

この記事では、PHP を使用して PDF ファイルを処理する方法を紹介します。 PDF ライブラリを使用して PDF ファイルを生成し、FPDI と PDFlib を使用して PDF ファイルを編集し、pdftotext と PDF パーサーを使用して PDF ファイルを読み取る方法を学びました。これらのメソッドは多くの一般的な PDF 処理タスクをカバーしていますが、PHP が提供する PDF ライブラリとツールには、探索および採掘できる機能がさらに豊富にあります。読者は、ニーズに応じて PDF ファイルを処理するためのさまざまなメソッドを選択できます。

以上がPHPを使用してPDFファイルを処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。