2

PHPを使用して、コンテンツが埋め込まれた画像(base64でエンコードされたファイル)を作成しています。Firefoxを使用して表示するか、ダウンロードしてからInkscape(www.inkscape.org)で開くと、画像は正常です。

しかし、imagemagickを使用して(convertコマンドまたはPHPのImagickサポートを使用して)変換しようとすると、埋め込まれた画像が最終結果になりません。

不足している特別なコマンドまたは構成があるかどうかはわかりません。特別な設定は使用していません。ただ ...

convert image.svg image.png 

ご回答どうもありがとうございました。

4

2 に答える 2

3

ImageMagickの組み込みSVGレンダリングは本当にひどいものです。回避できる場合は使用しないでください。代わりに、コマンドラインツールを使用するか、PHPrsvg拡張機能を使用してlibrsvgを使用することをお勧めします。rsvg

(Librsvgのレンダリングも常に完璧であるとは限りませんが、埋め込まれた画像を問題なく処理できるはずです。さらに優れたレンダリングが必要な場合は、コマンドラインからいつでもInkscapeを使用してみてください。)

于 2012-12-26T17:26:39.200 に答える
1

埋め込まれた画像はPNG形式ですか、それともJpeg形式ですか?PHPではどのコンバーターが使用されていますか?RSVGに付属していない最新のImageMagickを使ってWindowsを試してみました。Windows用のRSVG-Converterビルドを見つけました。これはうまく機能しますが、テストファイルのイメージのJpegバージョンをスキップします。

一方、組み込みのコンバーターは両方の画像を正しく処理しますが、 SVGチュートリアルに示されているホーム画像に対してはひどい仕事をします。

于 2012-12-26T16:33:59.717 に答える