2016-03-24 94 views
0

我在Ubuntu上使用itextpdf來填充包含數據的PDF表單。事實上,我使用這個套件中包含的一個類(實用程序):PdfFormFiller。數據由Unicode字符串表示。要正確顯示Unicode字符,我使用PdfFormFiller的-fonts選項。itextpdf僅從命令行嵌入字體

爲此,我編寫了一個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具有嵌入字體並且字符顯示正確。

但是,當我從網站運行腳本(訪問鏈接)生成的PDF不包含所需的字體(Arial與所有的Unicode字符)。

我試圖用絕對路徑,相對(網頁)路徑和變體來引用字體文件(在PHP腳本中)。不行。

我允許Apache用戶對涉及的所有文件擁有全部訪問權限。不行。

任何想法?

+0

什麼讓你覺得'php'從根帳戶運行具有相同的權限運行的Web服務'php'? –

+0

我將「apache」設置爲所有文件的所有者和組,並允許所有文件(rwx)。 –

+0

請分享您的PHP腳本。 –

回答