PHPでPDFドキュメント機能を使用する方法

WBOY
リリース: 2016-06-13 12:37:56
オリジナル
1040 人が閲覧しました

Hunte への手紙:
長い間オンラインでお会いしていませんでしたが、hunte なしでは phpuser.com は何の役にも立ちません。私はあなたのサイトの 2 つの記事を転送し、そのうちの 1 つを特別に転載しました。お詫びを申し上げます。

-------------------------------------- ------- ---------
原著者: Pergini Luca (www.phpbuilder.com)
翻訳者: znsoft (http://www.phpease.com)
----- -------------------------------------------- ---
転載 上記の情報をお守りください。そうでない場合は転載しないでください。

PHP にバンドルされている PDFLIB ライブラリは、最高の Web パブリッシング プラットフォームである可能性があります。典型的な使用法のペア:

要件パンフレット
電子商取引請求書

このガイドを通じて、php4 の PDF 拡張機能を使用して PDF ドキュメントを作成する方法を学ぶことができます。
私たちは、mysql データを使用して PDF ドキュメントを作成することにも重点を置いています。

内容の概要


PDF をサポートする PDFLib 3.0.1 および PHP4.01pl2 をインストールします (注釈: 最新の php4.03pl1 をインストールできます)

PDF を抽出しますドキュメント
(PHP の設定経験があることを前提としています)



PDFLib と PDF サポート付きの PHP をインストールします。

要件:

PHP 4.02 http://php.net からダウンロード
PDFLib 3.0.1 http://www.pdflib.com からダウンロード

これこれは、PDFLib3.0.1 と php4 を連携させる方法に関するちょっとした秘密のレシピです: (外国人はとてもユーモラスです^_^)

http://www.php から ext/pdf/pdf.c を直接ダウンロードします。 PDFLib v 3.0.1 をサポートする .net パッチ

ここから PDFLib 3.0.1 をダウンロード http://www.pdflib.com
該当するパッチはここから見つかります http://www.pdflib.com / pdflib/patches.html

PDFLib の構成、作成、インストール

#./configure --enabled-shared-pdflib
#make
#make install
あなた


PHP を構成します
#./configure --with-apxs=/usr/bin/apxs
--with-gd に PDFLib がインストールされます。 - -with-pdflib=/usr/local --with-mysql=/usr/local
--with-config-file-path=/etc/httpd --with-zlib-dir=/usr
- -with-ttf=/usr/local/include
--with-jpeg-dir=/usr --with-tiff-dir=/usr
--with-system-regex=yes --enable - debug=no

#make
#make install



システム ライブラリを更新
/usr/local/lib を /etc/ld.so に挿入.conf (ファイル)

#/sbin/ldconfig



テストと検証
次に、Apache
#apachectl restart


pdf Clock.php を httpd ディレクトリ (つまり、Web ディレクトリ) にコピーします...テスト...すべてが正常です。

重要な情報

PHPLIb でフォントを動作させるには、PDFLib マニュアルの UPR セクションに注意する必要があります。
PDFLib でフォントを使用する最も簡単な方法は、PDFlib tar パッケージ内の標準 UPR 記述ファイル (fonts/pdflib.upr) を作業ディレクトリにコピーすることです。

PDF ドキュメントの抽出
これで、Enclave のような PDF ドキュメントを生成する準備が整いました!


この小さな例では、FLYStore 企業の要件パンフレットを生成します。もちろん、データを抽出します。ディレクトリデータベース。




データベースの準備
読者には少なくともデータベースの経験があると思いますが、データベースの作成方法とそこにテーブルを挿入する方法を知っておいてほしいと思います。
テーブル カタログの作成:

create table category(
id smallint(8) unsigned DEFAULT '0' NOT NULL,
item varchar(100) DEFAULT '' NOT NULL,
説明 tinytext、
img_data longblob、
imgname varchar(60)、
imgsize varchar(60)、
imgtype varchar(60)、
price smallint(8) unsigned DEFAULT '0' NOT NULL、
PRIMARY KEY (id)、
KEY item (item(20))
);



を許可するために MIME ヘッダー情報
を送信します。正しく表示するには、正しいヘッダー情報をユーザーのブラウザに送信する必要があります。
PHP では、header 関数を使用してこれを実現できます。以下のコードは、正しい MIME タイプをブラウザに送信します。

header( "Content-type: application/pdf" );
header( "Content-Disposition:attachment; filename=modulo.pdf" );
header( "Content-Description: PHP3生成されたデータ" );



重要な情報
知っておくべきことは、ヘッダー情報を送信する前は何も出力できないということです。よくある間違いは、ファイルの先頭にスペースがあることです。


mysql からデータを取得する

ここでは、簡単なコード スニペットを使用してディレクトリ データからデータを抽出します。

$link = mysql_connect ("127.0.0.1", "flyadm", "flystore")
or die ("接続できませんでした"); >mysql_select_db ("flystore", $link);

$result = mysql_query ("SELECT * FROM カタログ", $link)
or die ("無効なクエリ"); $data = mysql_fetch_row ($result);
....
....
mysql_close ($link);


PDF ファイルを生成する

PDF ドキュメントを生成するには、次の手順を実行する必要があります:


PDF ストリームを開き、それをハンドルに関連付けます:
$ pdf = PDF_open();

(オプション) 著者、タイトル、件名などのドキュメント情報を設定します
(オプション) 著者、タイトル、件名などのドキュメント情報を設定します

新しいページを開始します (PDF ファイルは、縦向き、前景など、異なるレイアウトを使用して異なるページを生成できます):
PDF_begin_page($pdf, 595, 842);
(オプション) 設定 Aハイパーリンク:
PDF_add_outline($pdf, "Item ".$data[1]);

フォントの種類、サイズを選択 (pdf_set_font($pdf, "Helvetica-Bold" , 20, winansi) ;)プレゼンテーション モード

X.Y 位置にテキストを挿入します:
pdf_place_image($pdf, $im, 100, 300, 3);

テキスト バッファーを更新し、PDF ストリームを閉じます。
PDF 座標系
PDF ページの一部で文字列や画像を見つけるために必要なこと、
PDF ページの多くの場所で文字列や画像を見つけ、帝国単位を次の形式に変換する必要があります。 DTP ポイント値。

は PDFLIB マニュアルの 45 ページに記載されています:



"... デフォルトの座標系の原点は、 DTP ポイントを使用したページ 単位:
1 pt = 1 インチ /72 = 25.4mm /72 = 0.3528 mm
"


PDF を生成するコード スニペットは次のとおりです。ファイル:

$pdf = PDF_open();
pdf_set_info_author($pdf, "ルカ・ペルジーニ");
PDF_set_info_title($pdf, "FlyStore のパンフレット") ;
pdf_set_info_creator($pdf, "著者を参照");
pdf_set_info_subject($pdf, "FlyStore");
PDF_add_outline($pdf, "アイテム ".$data[1]) ;
pdf_set_font($pdf, "Helvetica-Bold" , 20, winansi);
pdf_set_text_rendering($pdf, 0);
pdf_show_xy($pdf, "FlyStoreカタログ 2000",50,780);

PDF_show_xy($pdf, "項目 : " .$data[1], 100, 700);

PDF_show_xy($pdf, "説明 : " . $data[2], 100, 620 );

$im = PDF_open_jpeg($pdf, "pass4_sml.jpg");
pdf_place_image($pdf, $im, 100, 300, 3);
pdf_close_image ($im);

pdf_ストローク($pdf);
PDF_close($pdf); ;

最後に、この記事は PDF チュートリアルではないことに注意してください。PDF ドキュメントの詳細と使用方法が必要な場合は、
http://www.pdfzone にアクセスしてください。 com/ および http://www.planetpdf.com/

お役に立てば幸いです。




ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!