0

PDF API TCPDF を含むプロジェクトに取り組んでいます。そのため、サイト管理者が新しいフォントをアップロードしてインストールし、TCPDF で使用できる管理領域が必要でした。私は次のことを行うスクリプトに取り組んでいます: 1) TTF フォントを TCPDF fonts/utils/ ディレクトリにアップロードします。2) PHP スクリプトからttf2afmを実行し、.AFM (Adobe フォント メトリック) を作成します。

$command = escapeshellarg("/usr/bin/ttf2afm $fontPath$fontName -o $fontPath$afmName");
$result = passthru($command);

また

$command = escapeshellarg("ttf2afm $fontPath$fontName -o $fontPath$afmName");
$result = passthru($command);

3) php -f makefont.php font.ttf font.afm を実行し、必要な font.php および font.z ファイルを生成します。

今私の問題は、上記のコマンドがWebページから実行されていないことです。このコードの一部を php インタラクティブ シェルからコピーして実行すると、うまく機能します。しかし、Webページからは、単に機能しません...

権限に関連する問題はありますか? または、Web ページからそのようなコマンドを実行できませんか?

前もって感謝します

4

1 に答える 1

0

まず、escapeshellarg の使い方が間違っています。より良いのは:

$command = escapeshellcmd("/usr/bin/ttf2afm")." ".escapeshellarg($fontPath.$fontName)." -o ".escapeshellarg($fontPath.$afmName);

また、エラー ログが有効になっていることを確認してください。これにより、アクセス許可エラーがあるかどうかを確認できます。

于 2011-06-27T10:13:21.243 に答える