我在Ubuntu上使用itextpdf来填充带有数据的PDF表单。实际上我使用了这个套件中包含的类(实用程序):PdfFormFiller。数据由Unicode字符串表示。要正确显示我使用的字符,我使用PdfFormFiller的-fonts选项。
为此,我编写了一个PHP脚本,只需使用正确的参数调用PdfFormFiller。
<?php
$command = "java -cp ./bin:lib/itextpdf-5.5.3.jar PdfFormFiller.PdfFormFiller DIPLOMA_FORM.pdf -f test.fdf -font \"fonts/arial.ttf\" -flatten test.pdf";
exec($command);
?>
当我从命令行(php)以root身份运行PHP文件时,一切都很好。 PDF具有嵌入的字体并且字符显示正确。
但是当我从web运行脚本(访问链接)时,生成的PDF不包含所需的字体(带有所有Unicode字符的Arial)。
我尝试使用绝对路径,相对(到网页)路径和变体来引用字体文件(在PHP脚本中)。不行。
我允许apache用户对所涉及的所有文件拥有所有访问权限。不行。
有什么想法吗?
答案 0 :(得分:0)