2016-03-24 11 views
0

Ubuntuでitextpdfを使用して、PDFフォームにデータを入力します。実際に私はこのキットに含まれているクラス(ユーティリティ)を使用しています:PdfFormFiller。データはUnicode文字列で表されます。 Unicode文字を正しく表示するには、PdfFormFillerの-fontsオプションを使用します。itextpdfコマンドラインからのフォントの埋め込み

これについては、私は正しいパラメータで単にPdfFormFillerを呼び出すPHPスクリプトを書いた。

<?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)は含まれません。

絶対パス、相対(Webページへの)パスとバリエーションでフォントファイル(PHPスクリプト内)を参照しようとしました。立ち入り禁止。

私は、関連するすべてのファイルに対するすべてのアクセス権をapacheユーザーに許可しました。立ち入り禁止。

アイデア?

+0

あなたは何を考えさせる 'php'があなたのrootアカウントから実行するには、Webサービスとして実行されている' php'と同じ権限を持っていますか? –

+0

私は "apache"を所有者として設定し、関係するすべてのファイルとすべての権限(rwx)に対してグループ化します。 –

+0

あなたのPHPスクリプトを共有してください。 –

答えて

関連する問題