2011-07-14 7 views
5

bug in Inkscape PDFファイルに書き出すときに、SVGドキュメントに含まれるJPEG画像がJPEGではなくビットマップとして埋め込まれます。Inkscapeで生成されたPDFファイルに適切にJPGデータを埋め込みます。

この結果、ファイルサイズが大幅に増加します。例えば、私は2 MBのJPEG画像を含むシンプルなSVG図面を持っています。 PDFにエクスポートすると14 MBのファイルになります。

回避策を探しています。 には、正しい符号化されたJPGイメージを挿入することによって、結果として得られるPDFを修正する方法がありますか?おそらくpdftkトリッキーを使用しますか?

(私の場合、得られたPDFはにpdflatexでレンダリングLaTeX文書の図として含まれるので、直接のInkscapeによって生成されたPDFを固定する以外に回避策が存在してもよい。)

+1

最後にInkscape 0.91で修正されました。 –

答えて

3

一その場しのぎのですJPEGなどのビットマップデータを再エンコードしますps2pdf、続いpdf2ps使用:私のテストケースについては

pdf2ps made-by-inkscape.pdf foo.ps 
ps2pdf foo.ps smaller-file.pdf 

を、ファイルサイズは以下の通りであった。

original JPEG   2.1M 
made-by-inkscape.pdf 15M 
foo.ps    104M 
smaller-file.pdf  1.5M 

もちろん、これにはJPEGデータを再エンコードする必要があります。これは避けるのが最善です。

+0

ps2pdfはpdfを入力に使用できるので、psファイルを最初に作成する必要はありません。 – Maxim

1

Inkscape 0.48.1をEPSにエクスポートして、結果のEPSファイルをepstopdf scriptに渡すと、良い結果が得られました。 PNG/JPGファイルはPDFファイル内のPNG/JPGのままで、フォントはきれいに見えます。

+0

これは、Inkscape 0.48.4(Ubuntu 14.04の在庫)ではうまくいきませんでした。 305604バイトのJPEGを持つ、些細なSVGを作成しました。 PDFにエクスポートすると2414085バイト、 'pdfimages -j'は2904016バイトのPPMを抽出します。 EPSにエクスポートすると28295129バイトになります。 epstopdf(Ubuntuパッケージのtexlive-font-utilsで)は1223973バイトのPDFを生成します。 'pdfimages -j'は821634バイトのJPEGを抽出します。結論:再エンコードされました。 –

関連する問題