印刷グラフィック用のSVG


17

スケーラブルベクターグラフィックスはどの程度印刷に適していますか?

印刷ドキュメントに含めるグラフィックをプログラムで生成する必要があります。ターゲットファイル形式には、EPSとSVGの2つの重大な競争相手しかないようです。

プログラマーとして、SVGは扱いやすいように見えますが、グラフィックス業界で受け入れられたようには見えません。以前は、SVG(例:Adobe PDFXML)に基づいて印刷グラフィックスを作成するプロジェクトがありましたが、現在アクティブなプロジェクトはありません。また、アドビのツールは、SVGの簡単な回避を終了したようです。

成果物の形式としてSVGを選択した場合、代替案と比較してどのような問題が発生する可能性がありますか?SVGのテキスト処理に関する苦情を聞いたことがありますが、詳細な議論は見つかりませんでした。もう1つ問題があると思われるのは、SVGがPDFにどれだけきれいに変換されるかです。


PDFに変換できるライブラリである必要があります。
DA01

回答:


9

実際には、印刷にはEPSまたはPDFの方が適しています。SVGはWebには問題ありません(それが設計された目的です)が、印刷時にRIPに問題があることがよくあります。SVGファイルを提供されるほとんどのデザイナーは、ベクターアプリでそれらを開き、ネイティブファイル、eps、またはPDFとして再保存します。SVGファイルを印刷プロバイダーに送信することはありません。


しかし、PDFはSVGを「仮想ペーパー」に埋め込むだけでよいのですが、それによってRIPの問題はどのように解決されますか?
ジグガンジャー

1
@jiggunjer PDFは、SVGとはまったく異なるコード構造を使用します。PDFはpostscriptに基づいていますが、svgはそうではありません。PDFとして保存しても、「svgを仮想ペーパーとして埋め込む」ことはありません。それは別のコードベースです。
スコット

ネイティブのsvgは、ラスターイメージの埋め込み方法と同様に保存されていると思います。しかし今では、pdfパスへの変換があることを理解しています。これは無損失ですか、またはpdfコンバーターの実装に応じて変動がありますか?たとえば、Inkscapeはghostscriptと同じsvgのPDFを生成しますか?
ジグガンジャー

Inkscapeについてコメントすることはできません。商業印刷に使用されるほとんどのRaster Image Processor(RIP)は、おそらくSVG画像で窒息するでしょう。彼らはコードベースを理解しません。PDFは基本的にソフトウェア RIPです。そのため、一般に、何かをPDFとして保存する場合、ハードウェアRIPが画像を処理するのと同じ方法で、出力を念頭に置いてコードが書き換え/構造化されます。基本的に、SVGとPDFの両方の出力が可能なアプリケーションには、フォーマットに基づいて出力を構成するための内部変換パラメーターが必要であり、SVGは商業印刷にはまったく不適切なフォーマットです。
スコット

ありがとう。これは私に考えさせたので、関連する質問を投稿しました:graphicdesign.stackexchange.com/q/97154/102588
jiggunjer

3

abcPDFを使用して、生成されたSVGを印刷目的でプログラムでPDFに変換しました。約4年が経ちましたが、図書館でのサポートが減るなんて想像もできません。


1

Inkscapeは、コマンドラインを介してSVGファイルをPDFおよびEPSに変換できます。Googleの「svg to epsコマンドライン」。これは、ウェブ配信と印刷配信の両方を目的としたグラフィックスに適したソリューションです。

これはLinuxでは動作するはずですが、Macのコマンドライン経由のInkscapeは多少壊れていることに注意してください(Inkscapeを自分でコンパイルするか、.app内のファイルリンケージを変更する必要がある場合があります)


-1

画像をビットマップに変換する必要がある場合は、画像を変換する前に正しいサイズを選択してください。画像の変換後のサイズ変更は品質の低下につながるためです。


3
ビットマップの変更が役立つと思う理由を説明できますか?ベクター形式を好むでしょう。
メンシュ

-2

すべての業界(レーザーカッター、フライス盤など)は、DXFで「物理的な作業を行う」ことに依存していDrawing Exchange Formatます。DXFは、SVGに正確に変換できるJSON AST(この目的のために多くのライブラリ)に変換できます。そのため、SVGを印刷目的で使用できない理由は考えられません。

この目的のためのSVGの重要な属性の1つviewBox=は、図面の実際の寸法を示すことです。viewBox=とに一致する必要がwidth=ありheight=ます。そうでない場合、印刷がトリミングおよびスケーリングされます。あなたは提供するべきviewBox=エクスポート時に属性をし、インポート時に、それを必要とします。

それでも、SVGで問題が発生する可能性はありますが、これはSVGのせいではありません。バグの多いドライバー/アプリケーションがたくさんあります。

私の会社では、デフォルトの図面交換形式にSVGを使用しています。


1
ステップを使用します。私のアプリケーションがDXF(の方言)を読み取ることができるのは事実ですが、レーザーカッター、CNCミル、またはCNC旋盤がDXFを使用することは事実ではありません。実際にはそうではなく、レーザーは、SVGよりもpdfに近いrasteisationが必要なため、ポストスクリプトに基づくプリンタールーチンを使用します。cncマシンはGコードを使用します。どちらの場合でも、正しい種類のプリミティブとCMSが不足しているため、DXFは印刷に使用できません。ただし、svgを印刷に変換することはできますが、svg自体には商業印刷に必要な機能がありません。それらは簡単に挿入できますが、すべてのSVGが不自由なpdfのようになると実装されません。
joojaa

より深い議論の扉を開いてくれてありがとう。答えの複雑さを軽減するための中間ステップについては言及しませんでした:GコードまたはPostscript(または任意の最終形式)は、マシンを所有する会社(レーザーカッター、プリンターなど)によって作成されます。マシンがその形式をサポートするコンバーターによって。フォーマット(DXF、この場合はSVG)が中間ステップとして使用されている場合、それは物理作業に適したフォーマットであることを意味します。SVGに不足しているプリミティブについて言及していただけますか?(DXFにはソリッドシェイプがありません、私の知る限り)
セレモニー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.