ホームページ >バックエンド開発 >PHPチュートリアル >PHP言語でPDFドキュメント機能を使用する方法_PHPチュートリアル
Hunte への手紙:
長い間オンラインで会っていなかったので、ちょっと言葉では言い表せない気分です。Hunte がなければ、phpuser.com は何の意味もありません。そのうちの 1 つを特別に転載させていただきました。お詫びを申し上げます。
原著者: Peragini Luca (www.phpbuilder.com)
翻訳者: znsoft (http://www.phpease.com)
----------------- - ---------------------------------
転載する場合は上記の情報を守ってください。そうでない場合は転載しないでください。
PDFLIB ライブラリにバンドルされている PHP は、おそらく最高の Web パブリッシング プラットフォームです。典型的な使用法のペア:
需要パンフレット
Eコマース納品書
このガイドを通じて、php4 の PDF 拡張機能を使用して PDF ドキュメントを作成する方法を学ぶことができます。
内容概要
PDF ドキュメントを抽出
PDF をサポートする PDFLib と PHP をインストールします。
要件:
PHP 4.02+ は http://php.net からダウンロード
PDFLib 3.0.1 は http://www.pdflib.com からダウンロード
これは PDFLib3.0.1 と php4 を連携させる方法に関するちょっとした秘密のレシピです: (外国人はとてもユーモラスです^_^)
PDFLib v 3.0.1 をサポートするには、http://www.php.net から ext/pdf/pdf.c のパッチを直接ダウンロードします
ここから PDFLib3.0.1 をダウンロードしてください http://www.pdflib.com
適用可能なパッチはここから見つかります http://www.pdflib.com/pdflib/patches.html
PDFLib を構成、作成、インストールする
#./configure --enabled-shared-pdflib
#make#make install
/usr/local/lib に PDFLib がインストールされます
#./configure --with-apxs=/usr/bin/apxs
--with-gd --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
#作る
システムライブラリを更新する
/usr/local/libを/etc/ld.so.conf (ファイル)に挿入する
#/sbin/ldconfig
テストと検証
次に、Apache を再起動する必要があります#apachectl restart
重要な情報
PHPLIb をフォントで動作させるには、PDFLib マニュアルの UPR セクションに注意を払う必要があります。
PDFLib でフォントを使用する最も簡単な方法は、PDFlib tar パッケージ内の標準 UPR 記述ファイル (fonts/pdflib.upr) を作業ディレクトリにコピーすることです。
PDF ドキュメントを抽出する
この小さな例では、FLYStore 会社の要件パンフレットを生成したいと考えています。もちろん、カタログ データベースからデータを抽出します。
データベースを準備する
データベースについてはある程度の経験があると思いますが、データベースの作成方法とそこにテーブルを挿入する方法を知っておいてほしいと思います。テーブルカタログを作成する:
create table category(
id smallint(8) unsigned DEFAULT '0' NOT NULL,
description tinytext,
img_data longblob,
imgname varchar(60),
imgsize varchar( 60)、
imgtype varchar(60)、
price smallint(8) unsigned DEFAULT '0' NOT NULL、
主キー (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_select_db ("flystore", $link);
or die ("無効なクエリ")
;
....
....mysql_close ($link);
PDFファイルを生成
$pdf = PDF_open();
(オプション) 著者、タイトル、件名などのドキュメント情報を設定します
新しいページを開始します (PDF ファイルは、縦向き、前景など、異なるレイアウトを使用して異なるページを生成できます):
PDF_begin_page($pdf, 595, 842);
(オプション) ハイパーリンクを設定します:
PDF_add_outline($) pdf, "アイテム ".$data[1]);
X.y 位置にテキストを挿入:
PDF_show_xy($pdf, "Item : " .$data[1], 100, 700);
または、X.Y 位置に画像を挿入します:
テキストバッファをフラッシュし、PDF ストリームを閉じます。
PDF 座標系
PDF ページの多くの場所で文字列や画像を見つけ、帝国単位を DTP ポイント値に変換する必要があります
PDFLIB マニュアルの 45 ページに書かれています:
".. デフォルトの座標系の原点はページの左下隅にあり、単位として DTP ポイントを使用します:
1 pt = 1 インチ /72 = 25.4 mm /72 = 0.3528 mm
"
PDF ファイルを生成するコード スニペットは次のとおりです:
PDF_begin_page($pdf, 595, 842);
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_ストローク($pdf);
最後に、この記事は PDF チュートリアルではないことに注意してください。PDF ドキュメントの詳細と使用方法が必要な場合は、
http://www.pdfzone.com/ および http://www にアクセスしてください。 .planetpdf .com/
お役に立てば幸いです。
www.bkjia.com
true
Hunte への手紙: 長い間オンラインでお会いしていませんでしたが、hunte なしでは phpuser.com は何の役にも立ちません。私はあなたのサイトに 2 つの記事を転送しましたが、そのうちの 1 つは特に私の意見を表明するために転載しました。謝罪します -- ---...