how to compile PDFlib
how to compile PDFlib?
./configure?
------解决方案--------------------
--with-pdflib=/usr/lib
参考
http://bugs.php.net/bug.php?id=11014
------解决方案--------------------
使用pdflib及PHP生成pdf文件(文件内容中有中文)的方法(
1、首先安装apache及php
2、http://www.pdflib.com/ 下载pdflib包
3、解压后把PDFlib-6.0.4-Linux\PDFlib-6.0.4-Linux\bind\php5\php-520目录中的libpdf_php.so文件放到服务器上的一个目录,假设是/php/extend/
4、设置php.ini文件extension_dir=/php/extend,如果你已经设定好了,就可以把libpdf_php.so文件放到你设定好的目录
5、设置php.ini文件extension=libpdf_php.so
重启apache,看一下phpinfo()是不是已经有支持pdf了
pdf
PDF Support enabled
PDFlib GmbH Binary-Version 7.0.0p3
PECL Version 2.1.0
Revision $Revision: 1.5 $
如果出现上面的字样就已经成功了
新建立一个utf-8的文件test.php
$pdf = PDF_new();
pdf_set_parameter($pdf, "textformat", "utf8");
pdf_set_parameter($pdf, "FontOutline", "SIMSUN=SIMSUN.TTF");
PDF_open_file($pdf, "PDFTest.pdf");
PDF_begin_page($pdf, 595, 842);
$MSMINCHO = PDF_findfont($pdf, "SIMSUN", "host", 1);
PDF_setfont($pdf, $MSMINCHO, 10);
PDF_show_xy($pdf, "aaaa", 150, 630);
PDF_show_xy($pdf, "aabcd", 150, 630);
PDF_end_page($pdf);
PDF_close($pdf);
?>
看看生成成功了没有!
下载一个adobe reader,安装完了以后,在安装好的目录里找到Adobe-GB1-UCS2,UniGB-UTF16-H,UniGB-UTF16-V这三个文件
放到与test.php同一目录下
$pdf = PDF_new();
pdf_set_parameter($pdf, "textformat", "utf8");
pdf_set_parameter($pdf, "FontOutline", "SIMSUN=SIMSUN.TTF");
PDF_open_file($pdf, "PDFTest.pdf");
PDF_begin_page($pdf, 595, 842);
$MSMINCHO = PDF_findfont($pdf, "SIMSUN", "UniGB-UTF16-H", 1);//这里修改了-V就是竖写的,还有很多组合,慢慢研究吧
PDF_setfont($pdf, $MSMINCHO, 10);
PDF_show_xy($pdf, "你好你好", 150, 630);
PDF_show_xy($pdf, "aabcd", 150, 630);
PDF_end_page($pdf);
PDF_close($pdf);
?>
还可以去adobe的网站下载reader的语言包
http://www.pdflib.com/en/download/resources/cmaps/
从这里可以下载所有的CMAP文件!
能解决字符问题!官方网站太重要了!