SVGおよびJPG/PNG画像ファイル用のコマンドライン(パイプ可能)グラフビューアーはありますか?
特に、グラフ/画像ファイルはプレーンファイルではなくパイプラインを介して出力されるため、ファイルタイプ/拡張子を指定するオプションが必要です。
gvはドットプログラムによって生成されたPS/PDFで機能しますが、SVGなどの画像ファイルをサポートするための代替手段があるかどうか知りたいのですが。
ImageMagick に付属するdisplay
プログラムを試しましたか?
Inkscape には独自のビューアがすでに付属しています:inkview
機能がなく、少し遅いかもしれませんが、機能します(おそらくImageMagickのdisplay
よりもSVGをより正確にレンダリングします)。
「パイプ可能」とはどういう意味ですか?feh
は、多数のオプションを備えた非常に優れたコマンドラインビューアです。
私は通常SVGをテキストファイルとして使用するので、ファイルが保存された(およびその内容が変更された)とすぐにビューアが表示を自動的に更新するようにしたいと思います。これは「pipable」状況に適用できるはずです(つまり、名前付きパイプ)。
デフォルトのGnomeアプリの場合:
evince
は現在、PDFの場合はこのように機能しますが、SVGを読み取ることができないようです(私にとっては、SVGファイルをロードしようとしたときに「Unable to open document - Error opening file: Permission denied
」が生成されます)。eog
(Eye Of Gnome)-最新バージョン-これでファイルが変更されたかどうかを検出し、[再ロード]ボタンを提供できます。どうやら、毎回「再読み込み」をクリックする必要があるようです(eog
がPDFで動作するように、evince
でファイルの変更時に常に自動再読み込みを実行する方法はわかりません)。また、少なくとも私のUbuntu 10.04では、eog
SVGのサポートがいくらか壊れています(ぼやけた線で結果を拡大)display
は、ディスク上のファイルが変更されたときに自動的に更新されないだけでなく、display
で[更新]を押しても、更新は行われますnot最新を取得しますファイルのバージョン(つまり、最新バージョンを表示するにはdisplay
を再起動する必要があります:()。これまでに見つけたメモがいくつかあります。
Java -jar batik-squiggle.jar
を実行してください。ディスク上のsvgファイルが変更された場合、イメージを自動的に更新しませんxsvg
(from http://cairographics.org )-インストールしました libsvg1_0.1.4-1_i386.deb 、 libsvg-cairo1_0.1.6 -5_i386.deb および xsvg_0.2.1-3_i386.deb の順序で;これらのバージョンは2005年のものなので、xsvg
は非常にシンプルです-ズームなし、何もありません。そして言うまでもなく、保存されたファイルの変更に自動的に反応しません...rsvg-view
が見つかりました。これはSudo apt-get install librsvg2-bin
の一部だと思います。その小さなニースはstdinをサポートしていますが、rsvg-view
はファイルの変更を検出できず、自動的に更新されます。うん、まあ、これが役に立てば幸い...
乾杯!
[〜#〜] edit [〜#〜](Dec 24 '10):まあ、これも私の貢献です: svg_refreshview.py -これは基本的には上記のsvg_compare.py
は、SVGファイルを単に表示し、ファイルがリロードされ、ファイルが変更されている場合は表示を更新します。 (それは実際にstdinで動作することはできません-しかし、私のリポジトリには、pythonでstdinを解析する他のスクリプトがあります、おそらくそれらは役に立ちます)。
EDIT2(May 20 '12):また、Perl-Tkスクリプトの例が思い付きました。これは非常に大雑把です(マウス操作がない、何もない) )ですが、ImageMagick Perl APIを使用しており、SVGを(キャンバス上のビットマップとして)レンダリングできます。 answer#10670039-ImageMagick API for display
へのコマンドラインGUIアプリケーションインターフェース-スタックオーバーフロー 。
Geeqieビューアがsvgグラフィックを処理し、更新された画像を自動的にロードするようです。 stdinから画像を取得できるかどうかはわかりません。お役に立てば幸いです。
何らかの理由で本当に一時ファイルを使用したくない場合は、少なくとも名前付きパイプを使用することができます。
これを使用すると、Firefoxを簡単に使用でき、Inkscapeのinkview
、imagemagickのdisplay
などをはるかに上回ります。
# Shell 1
mkfifo /tmp/mypipe
long | chain | of | stuff > /tmp/mypipe
# Shell 2
firefox --new-window /tmp/mypipe