SVGをPDFおよび/または一般的に使用されるビットマップ形式に変換する無料のLinuxコマンドラインツール?


17

SVGをPDFや一般的に使用されるビットマップ形式(PNGなど)に変換する無料のLinuxコマンドラインツールはありますか?

linux  svg 

2
mogrify -format pdf -- *.svg
Yrogirg

回答:


25

Imagemagickは、ラスタライズ(ピクセル化)出力が必要な場合(または少なくとも許容範囲内)には優れていますが、変換しようとしているもののラスタライズバージョンをPDFに効果的に埋め込むため、そうでなければ悪い選択です。svg / pdfの全体的なポイントは、ベクトル化できるため、サイズを小さくしながら、どの解像度でもスムーズに維持できることです。

そのため、InkscapeまたはCarioSVGの使用をお勧めします。後者には、この目的のために正確にいくつかのコマンドラインユーティリティがあります(svg2pdfsvg2psおよびsvg2png)。唯一の問題は、基本的には単なるpython eggであるため、python環境が設定されておらず、設定するのに十分な知識がない(または気にしない)場合、そのオプションはnoです行く。私は自分自身を試してみましたが、設定の問題を抱えていた必要なlibcairo(私は試していないことをあまりにもハード)。

Inkscapeは素晴らしいですが、すべての作業をすばやく簡単にコマンドで実行したい場合、cliは少し不格好です。これをすべて処理してくれる小さなスクリプトをいくつか作成しました。

svg2pdf

#!/bin/bash

for i in $@; do
  inkscape --without-gui --export-pdf="$(basename $i .svg).pdf" $i
done

svg2png

#!/bin/bash

for i in $@; do
  inkscape --without-gui --export-png="$(basename $i .svg).png" $i
done

最初のものを~/bin/svg2pdfに、後者をに入れ、両方で~/bin/svg2png実行chmod +xして実行可能にし、ブームになります!InkscapeのCLIがどのように機能するかを考えたり覚えたりする必要のない、これらの頻繁に必要な操作への迅速かつ簡単なショートカットがあります。(明らかに、これが機能する前にInkscapeをインストールする必要があります)


imagemagickとinkscapeを使用して10個のpdfを生成し、imagemagick5.77倍の速度で高速 テストを1回行っただけです。time for i in {1..10}; do time inkscape --without-gui -f "drawing.svg" --export-pdf="drawing$i.pdf"; done;実0m2.192s time for i in {1..10}; do convert drawing.svg drawing$i$i$i.pdf; done;実0m0.381s

6
より高速かもしれませんが、グラフィックのベクトルの性質を失っているので、おそらく10倍も大きいでしょう(ただし、間違っている場合は修正してもらいたいです)。時間がかかる理由は、実際のベクトル操作を実行しているためです。これは、ラスタライズ(基本的にレンダリングと同等)よりもはるかに複雑です。
-metasoarous

7

Image Magickがあり、Inkscapeにはコマンドラインツールもあります。


3
convertはるかに勝ちます。存在すら知らなかった難解なフォーマットとの間で変換を行い、必要以上に多くの効果を適用することもできます。
new123456

3
なじみのない読者のために明確にするためにconvert、ImageMagickのコマンドラインツールです。
エリカ

2
さらにもう1つ明確になります。変換を使用すると、ベクターからラスターに切り替わり、画像を拡大縮小する機能が失われます。私の本では、勝つのはインクスケープです。必要なものに依存します。
nsheff 14


0

私が知っているように、cmd経由でInkscapeを操作する方法があります-私はすでに私の巨大なSVGコレクションからPNGサムネイルをバッチエクスポートするために同様のものを使用しました InkscapeはCairo経由のPDFエクスポートもサポートしているため、PDFもエクスポートできるはずです。Inkscapeフォーラムで質問します。:-)

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