您现在的位置: 365建站网 > 365学习 > PDFlib使用实例

PDFlib使用实例

文章来源:365jz.com     点击数:408    更新时间:2009-09-19 10:39   参与评论

サンプルライブラリ

<?php
/* $Id: hello.php,v 1.00 2009/07/24 tm Exp $
 *
 * PDFlibを使用して、PHPでEUC-JPのPDFファイルを生成する方法です。
 * このソースコードではEUC-JPのファイルを前提としています。
 *
 
*/

// CMap ファイルの配置ディレクトリを指定 
define('PATH_CMaps', 'c:/pdflib/resource/cmap');

$p = PDF_new();

/* 新しくPDFファイルをオープンします */
if (PDF_open_file($p, ""== 0) {
    
die("Error: " . PDF_get_errmsg($p));
}

pdf_set_parameter(
$p, "license", "WXXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX");

/* CMap を指定しない場合、日本語の文字列出力時にエラーもしくは文字が空白となります。 */
PDF_set_parameter(
$p, 'SearchPath', PATH_CMaps); 

PDF_set_info(
$p, "Creator", "hello.php");
PDF_set_info(
$p, "Author", "Rainer Schaaf");
PDF_set_info(
$p, "Title", "Hello world (PHP)!");

/* 新規ページを開始する */
PDF_begin_page_ext(
$p, 595, 842, "");

/* フォントを指定する */
$font = pdf_load_font($p, "HeiseiKakuGo-W5", "EUC-H", "");
$font_blod = pdf_load_font($p, "HeiseiKakuGo-W5", "EUC-H", "fontstyle= bold");

PDF_setfont(
$p, $font, 24.0);
PDF_set_text_pos(
$p, 50, 700);
PDF_show(
$p, "おはよう日本!");

/* 線を描く */
pdf_moveto(
$p, 50, 700); pdf_lineto($p, 450, 700);
pdf_stroke(
$p);

PDF_end_page_ext(
$p, ""); /* ページを終了する */

PDF_close(
$p); /* PDF文書を閉じる */

$buf = PDF_get_buffer($p);
$len = strlen($buf);

// ファイルで出力する
$filename=get_download_name("日本語ファイル.pdf");
header("Content-Disposition: attachment; filename=$filename");
header("Content-type: application/x-download; name=$filename");
header("Content-Type: application/pdf; charset=iso-2022-jp");
print $buf;

PDF_delete(
$p);
exit();

//// 出力はファイルでは無く、ブラウザに返すようにしています。
//header("Content-type: application/pdf");
//header("Content-Length: $len");
//header("Content-Disposition: inline; filename=hello.pdf");
//print $buf;
//
//PDF_delete($p);


function get_download_name($p_filename) {
    
// ユーザーエージェントによってファイル名を変換
    $t_filename = mb_convert_encoding( $p_filename, 'SJIS-win', 'EUC-JP');
    
return $t_filename;
}

?>

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛

发表评论 (408人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
昵称:
最新评论
------分隔线----------------------------

快速入口

· 365软件
· 建站公司
· 杰创官网
· 建站工具

业务咨询

· 技术支持
· 服务时间:9:00-18:00
365建站网二维码

Powered by 365建站网 RSS地图 HTML地图

copyright © 2013-2022 版权所有 鄂ICP备17013400号-1

Creative Commons License 本作品采用 知识共享署名-非商业性使用 2.5 中国大陆许可协议进行许可。