フォントやエフェクトを破壊せずにInkscape SVGからPDFを作成


8

いくつかの透明効果を含むInkscape SVGファイルと、配布用にPDFファイルにエクスポートするさまざまなレイヤーがあります。「名前を付けて保存...」または「コピーを保存...」を使用してPDF形式を選択すると、すべての効果が文字化けします。

上:予想される出力。 下:実際の出力

上:予想される出力。下:実際の出力。

私は元の.svgをまだ持っているので、画像を平坦化したり、編集機能を失ったり、プロセスの何を失ったりしてもかまいませんが、とにかくそれに対するオプションを見つけることができません。大きな用紙への印刷に使用できるようにしたいので、ラスタライズされた形式へのエクスポートは避けたいです。

これに対する解決策を探しているとき、私はとりわけこのスレッドを見つけました。最初は2006年でしたが、最新の答えは2012年のもので、

6年後..同じ問題。InkscapeはPDFレベルの不透明度にエクスポートできません。とても悲しい。

これを行う方法は本当にありませんか?


どのInkscapeビルドを使用していますか?透明度とPDFエクスポートは私には問題なく動作します(このPPAからの最新のinkscape開発トランク)。透明度が本当の問題だと確信していますか?PDF出力に問題があるように見えます。最悪の事態が発生した場合は、いつでもファイルを高解像度のラスターとしてエクスポートし、でPDFに変換できconvert image filename.pdfます。
グルタニメート2013年

inkscape --versionInkscape 0.48.4最初に警告メッセージ(inkscape:19694): Gtk-WARNING **: Unable to locate theme engine in module_path: "pixmap",を何度も出力した後、私にくれます。Ubuntu 13.04のデフォルトリポジトリからインストールされました。PDFに関しては、他にも問題があると思います(たとえば、フォントがオフになっているようです)が、それらは最終的に関連していると思います。
Tomas Aschan 2013年

最新の開発ビルドをインストールしてみる価値はあると思います。以前にPPAを使用したことがない場合は、こちらをご覧くださいPPA-Purgeを使用すると、いつでも変更を元に戻すことができます。あなたが受け取るこれらの警告は、表示されるべきではないが心配する必要のないテーマの問題です。
グルタニメート2013年

明確にするために、それらのエフェクトを「Sydamerika」に手動で適用しましたか、それともフォントの一部ですか?
グルタニメート2013年

@Glutanimate:テキストを白色のフォントで記述し、白と青の四角形を作成してグループ化し、四角形とテキストをマスクとして適用して、カラーシフトを作成しました。それを除いて、私はこのテキストで「効果」を何もしていません。
Tomas Aschan 2013年

回答:


4

InkscapeをPPAバージョン0.49以前にアップグレードする必要があります。私のテストでは、マスキング、クリッピング、および参照パスの違いを使用して結果を生成しました。

クリップマスクとインクスケープの違いをPDFとして示すサンプル画像

inkscapeをアップグレードするには、ターミナルを開いて次のコマンドを発行します。

sudo add-apt-repository ppa:inkscape.dev/trunk
sudo apt-get update
sudo apt-get install inkscape-trunk

これにより、0.48バージョンのinkscapeが削除され、PDFファイルに必要な0.49より前のバージョンに置き換えられます。


3

パッケージからinkscape .svgファイルを.pdf 使用するように変換することもできます。 rsvg-convertlibrsvg2-bin

rsvg-convert -f pdf -o foo.pdf foo.svg

これにより、ファイルの透明度が保持されました。


3

さて、これはこの回避策について私の2セントです。

を使用して以前の回答を試しましたが、rsvg-convert透明なアイテムではうまくいきました。問題は、SVGに埋め込まれた画像があり、実際には非常に低い解像度でラスタライズされていることです。より高いX / Y dpiを指定しても、それrsvg-convertは変わりませんでした。

だから私は次のことをしました、それは問題を解決しました:

  1. 画像をPDFに「ラスタライズ」: rsvg-convert -f pdf -o rasterized.pdf orig.svg
  2. Inkscapeで元の画像を開きます。 inkscape orig.svg
  3. Inkscapeでラスター化された画像(現在は透明な図形を含むが、ラスター化された埋め込み画像も含む)を開きます。 inkscape rasterized.pdf
  4. 誤ってラスタライズされた画像に到達するまで、後者のすべてのアイテムをグループ解除します
  5. 埋め込み画像を2.から4.の画像にコピーし、誤ってラスタライズされた画像を置き換えます
  6. 通常、Inkscapeを介してPDFとして保存します。

結果:透明な形状、高解像度の画像


3

この明らかなバグを解決するために私が見つけた1つの解決策は、次のとおりです。結果は完璧に見えます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.