ImageMagick と Ghostscript を連携させるのに問題があります。インストールからテスト、実際のソフトウェアの使用まで、すべてが難しいようです。誰にもヒントはありますか?
3 に答える
PDF から JPG への変換のために、ImageMagick を PHP とうまく連携させるために、この 3 時間を費やしました。自分でローカルに文書化する代わりに、ここにすべての流行語と私が失敗したことを書いて、次の初心者が時間を節約できるようにしようと考えました。
PHP 5.2.8 および Apache 2.2.11 を使用する 2 つの OS、Windows 7 x64 および Vista x64 でテスト済み。
Ghostscript と ImageMagick が必要です。と を手に入れましgs871w64.exe
たImageMagick-6.6.3-0-Q16-windows-x64-dll.exe
。
ImageMagick の基本的なインストールを行います (今は IM と呼びます)。システム パス変数を再確認して、どこからでも IM を実行できることを確認します。IM ディレクトリを指している必要があります。cmd
:の次の行でインストールをテストしますconvert test.gif test.jpg
(あると仮定しますtest.gif
)。正常に動作します。
PDF 変換をテストします ( convert test.pdf test.jpg
)。"gswin32c.exe"、"Postscript delegate failed"、"missing an image filename" に関する (長い) メッセージが表示されます。つまり、IM は PDF の「翻訳者」を見つけることができません。Ghostscript が必要です。
Ghostscript をインストールします (ここでは GS と呼びます)。かかる前に、何らかの理由で2回実行する必要がありました。GS フォルダー内の「bin」アドレスをシステム変数に追加します。でインストールをテストするgswin32 test.pdf
と、ファイルが GS ビューアーにポップアップ表示されるはずです。重要な注意: gs はWindows では動作しません'gs' is not recognized as an internal or external command, operable program, or batch file.
( )。gswin32を使用する必要があります。
IM テストに戻る:convert test.pdf test.jpg
今すぐ動作するはずです。
次に PHP に移ります。次のスクリプトを作成します。
$out = shell_exec("convert blah.pdf blah2.jpg 2>&1");
echo $out;
これ2>&1
により、すべてのエラーが標準出力に移動されるため、より適切に診断できます:)。これで、PHP スクリプトが cmd プロンプトで実行される場合がありますが、ブラウザーで実行しても何も起こりません。額を叩いて Apache を再起動します。
あえぎ網羅的でおそらく初歩的なことだと思います。しかし、うまくいけば、約20ページの半有用な手がかりの要約.