5

作成した SVG を高解像度 (600 DPI) PNG にレンダリングしたいと思います。この SVG にはフィルタ効果、特にガウスぼかしがあります。

理想的には、レンダリングはコマンド ラインから実行できます。

SVG はChrome/Chromium で開くことができ、表示したい出力があるため、SVG がレンダリング可能であることはわかっています。

私が試したこと:

Adobe Illustrator へのインポート

svg2png

イメージマジック

インクスケープ

私が今忘れている他のコマンドラインツールとプログラム。基本的には、Google で見つけられるものなら何でも。

私が追求している現在の道ですが、立ち往生しています:

Chromium が SVG を適切にレンダリングできることと、それがオープンソースであることを知っていたので、Chromium が SVG をレンダリングするために依存しているライブラリ (Skia、https://sites.google.com/site/skiadocs/ ) をダウンロードして使用することにしました。 PNGを出力します。これまでのところ、Skia のインストールと最初の例の実行に成功しています。SVG をレンダリングする例 ( https://code.google.com/p/skia/source/browse/trunk/samplecode/SampleSVG.cpp?r=875 ) を見つけましたが、私の環境ではうまく実行できませんでした。 XCode とコマンドライン ツールの最新の更新プログラムを備えた OSX マシン。PNGを出力するその例(gypファイルを含む)の修正版は素晴らしいでしょう。

うまくいくかもしれない他のアイデア:

Chrome からピクセル データを取得する (どうすればよいでしょうか? 画像の解像度が高いため、単純なスクリーンショットでは十分ではありません。また、スクリプト化可能で反復可能なプロセスが必要です。)

SVG をレンダリングできる他のグラフィック ライブラリを使用する。これは、他の Web ブラウザーに由来するものかもしれませんが、そうでない可能性もあります。

4

1 に答える 1

3

これはうまくいくようです:

webkit2png -F blue.svg -o rendered

は解像度 PNG-Fを生成し、サムネイルは生成しないように指示し、出力ファイル名は.Full-orendered-full.png

ここに画像の説明を入力

スタック オーバーフローに収まるようにサイズを縮小しましたが、表示されているコマンドは実際にはフル解像度の 2880x2880 の画像を提供します。

于 2015-02-11T09:53:29.943 に答える