Befehlszeilen-SVG und Image-Datei-Viewer in Linux?

55461
Xiè Jìléi

Gibt es einen Pipe-fähigen Befehlszeilen-Viewer für SVG- und JPG / PNG-Bilddateien?

Insbesondere die Grafik- / Bilddateien werden über eine Pipe-Line ausgegeben und nicht als einfache Dateien. Daher muss die Option angegeben werden, um den Dateityp bzw. die Dateierweiterung anzugeben.

Obwohl gv für PS / PDF mit Dot-Programmen funktioniert, würde ich gerne wissen, ob es Alternativen für die Unterstützung von SVG-Dateien usw. gibt.

33
Nur zur Verdeutlichung: Ihr Hauptpunkt ist nicht die Anzeige von .svg, .jpg und .png auf der Konsole ("Befehlszeile"), sondern die Übertragung solcher Mime-Typen an ein normales Grafikprogramm. akira vor 13 Jahren 1
Ja, ich möchte in X anzeigen. Genau wie bei gv. Aber gv unterstützt SVG nicht usw. Xiè Jìléi vor 13 Jahren 1
`gwenview` ziemlich schnell, frage mich, ob es Ihren Bedürfnissen entspricht? Aquarius Power vor 6 Jahren 0

6 Antworten auf die Frage

34
Dennis Williamson

Haben Sie das displaymit ImageMagick gelieferte Programm ausprobiert ?

AFAIK, Imagemagick alleine kann keine SVG-Dateien anzeigen, es benötigt ein Tool, das SVG in Bitmap konvertiert. Unter Debian ist "sudo aptitude install librsvg2-bin" erforderlich, wenn "rsvg-convert" noch nicht installiert ist. Das Paket enthält auch einen Viewer "rsvg-view-3" mit besserem Zoom als "Display". Mytskine vor 11 Jahren 2
@Mytskine: Gemäß der [ImageMagick-Dokumentation] (http://www.imagemagick.org/script/formats.php#supported) wird bei [Inkscape] (http://www.inkscape) ein eigener interner SVG-Renderer verwendet .org /) oder [RSVG] (http://developer.gnome.org/rsvg/) sind nicht verfügbar. Dennis Williamson vor 11 Jahren 1
Auf meinem System: `inkscape` ist langsam zu laden,` inkview` ist schnell, kann aber die Ansicht nicht ändern? `display` funktioniert super für mich :-) Hugh Perkins vor 8 Jahren 1
Ich habe es nicht geschafft, die Inkview-Arbeit von der Pipe-Eingabe zu bekommen, aber das Display macht genau das, was ich will :-) Ich benutze es wie `go run my_svg_generator.go | Anzeige` thx. JepZ vor 7 Jahren 0
WARNUNG!!!! Verwenden Sie kein Display, wenn Sie es eilig haben !!! Für eine 500-kb-svg-Datei (zum Analysieren von systemd-Bootproblemen) dauerte es 20 Minuten, bevor ich meinen Computer wieder verwenden konnte, da er 4 GB (angefordert 7 GB virt.mem) meines 6 GB bereits aufgeblähten Arbeitsspeichers benötigte und eine große Menge (5 GB) austauschte ging nur wegen der Anzeige zu tauschen) :(, nicht sicher über die Leistung einer anderen Option, um svg tho., `gwenview` ziemlich schnell übrigens zu visualisieren Aquarius Power vor 6 Jahren 1
11
Denilson Sá Maia

Inkscape verfügt bereits über einen eigenen Viewer:inkview

Es fehlen Funktionen, es könnte etwas langsam sein, aber es funktioniert (und rendert SVG wahrscheinlich genauer als ImageMagick display).

Ich wollte nur bemerken, dass ich "inkview" (ich glaube aus 0.48 inkscape) auf Ubuntu 10.04.3 ausprobiert habe, unglaublich schnell gestartet! (EDIT: aber nur für kleine `.svg-Dateien; versuchen Sie` inkview / usr / share / inkscape / Examples / *. Svg * `Wie die Manpage sagt, gibt es auch ein paar Harte ...) GUI-Startup _is_ schnell.) Danke für diesen Hinweis, @ DenilsonSá - Prost! sdaau vor 11 Jahren 0
Bei wirklich großen SVGs scheint inkview zu brechen. CMCDragonkai vor 5 Jahren 0
10
Ivan Petrushev

Was meinst du mit 'pfeifenfähig'?
fehist ein sehr guter Kommandozeilen-Viewer mit unzähligen Optionen.

Ich meine, es akzeptiert Eingaben von stdin und erratet den MIME-Typ, wenn möglich. Oder geben Sie die Erweiterung explizit an, wenn der Dateityp nicht heuristisch erraten werden kann. Xiè Jìléi vor 13 Jahren 1
"feh" scheint SVG überhaupt nicht zu unterstützen; Ich bekomme "` feh WARNING: pySVGLogo.svg - Kein Imlib2-Loader für dieses Dateiformat "" ... Prost! sdaau vor 13 Jahren 11
Einige weitere Anmerkungen: Zuerst `feh` [Homepage] (http://feh.finalrewind.org/), [Beispiele] (http://feh.finalrewind.org/examples/) und [Screenshots] (http: / /linux.softpedia.com/progScreenshots/feh-Screenshot-420.html); Sekunde (_ubuntu 10.04.3_): startet sehr schnell; hat Debian / Ubuntu-Paket; hat eine etwas seltsame Mausinteraktion (siehe `feh --help` am Ende); Ich kann ein Verzeichnis von `png`s laden und` ← `oder` → `(Pfeiltasten) gedrückt halten, es wird so schnell geladen, dass es aussieht (oder besser als) ein animiertes .gif`:) `... Cheers ! sdaau vor 11 Jahren 1
6
sdaau

Normalerweise arbeite ich mit SVG als Textdateien, daher möchte ich, dass der Betrachter die Anzeige automatisch aktualisiert, sobald die Datei gespeichert wurde (und der Inhalt geändert wurde). Dies sollte auf "pipable" -Situationen zutreffen, denke ich (dh mit named Rohre).

Beachten Sie, dass für Standard-Gnome-Apps:

  • evinceDerzeit funktioniert das für PDFs so, aber es kann anscheinend keine Unable to open document - Error opening file: Permission deniedSVG-Dateien lesen (" " generiert es, wenn ich versucht habe, SVG-Dateien zu laden).
  • eog(Eye Of Gnome) - die neuesten Versionen - können auch erkennen, ob sich eine Datei hier geändert hat, und dann die Schaltfläche 'Neu laden' anbieten. aber anscheinend müsstest du immer noch auf 'reload' klicken (ich sehe keine Möglichkeit, das automatische Neuladen immer beim Dateiwechsel zu veranlassen eog, wie evincebei PDF- Dateien ) - und außerdem, zumindest bei meiner Ubuntu 10.04, eogSVG-Unterstützung ist etwas defekt (Zoomen mit unscharfen Linien)
  • ImageMagick wird displaynicht nur nicht automatisch aktualisiert, wenn sich die Datei auf der Festplatte ändert - und selbst wenn Sie auf "Aktualisieren" klicken display, erhalten Sie immer noch nicht die neueste Version der Datei (dh Sie müssen neu starten display, um die neueste Version anzuzeigen :() .

Hier sind einige weitere Hinweise, die ich bisher gefunden habe:

  • Squiggle, der SVG-Browser Der SVG-Browser, der Teil des Batik-Toolkits ist. - Laden Sie Batik batik-1.7.zip herunter ; packe es aus; laufen java -jar batik-squiggle.jarund da ist es; Das Bild wird nicht automatisch aktualisiert, wenn die SVG-Datei auf der Festplatte geändert wurde
  • SVG Image Viewer? - Empfehlungen des Ubuntu-Forums :
    • In Post # 8 - " Ich habe ein kleines Python-Skript geschrieben ... Sie führen es einfach wie folgt aus: svg_compare.py und es öffnet sich ein svg und zeigt es mithilfe einer svg-Bibliothek und der Raster-Bibliothek von gtk an. Sie können mit der Maus zoomen. .. "
    • xsvg(von http://cairographics.org ) - Ich habe libsvg1_0.1.4-1_i386.deb, libsvg-cairo1_0.1.6-5_i386.deb und xsvg_0.2.1-3_i386.deb in dieser Reihenfolge installiert ; Diese Versionen stammen aus dem Jahr 2005 und sind daher xsvgextrem einfach - kein Zoom, nichts .. Und es ist unnötig zu erwähnen, dass es nicht automatisch auf gespeicherte Dateiänderungen reagiert ...
  • dadurch fand ich rsvg-view, von dem ich denke, dass es ein teil davon ist sudo apt-get install librsvg2-bin. Klein, nett, unterstützt stdin - kann jedoch auch rsvg-viewkeine Dateiänderung erkennen und automatisch aktualisieren.

Ja, ich hoffe, das hilft ...
Prost!

 

EDIT (24. Dezember 10): Nun, hier ist auch mein Beitrag: svg_refreshview.py - im Grunde eine Überarbeitung der svg_compare.pyoben genannten, die einfach eine SVG-Datei zeigt, die Datei neu lädt und die Anzeige aktualisiert, wenn die Datei geändert wurde . ( es kann nicht wirklich mit stdin funktionieren - aber es gibt andere Skripte in meinem Repo, die stdin in Python analysieren, vielleicht helfen sie ).

EDIT2 (20. Mai '12): Außerdem kam ein Perl-Tk-Skript-Beispiel, das sehr grob ist ( keine Mausinteraktion, kein nichts ), aber die ImageMagick Perl-API verwendet und so SVG (als Bitmap auf einer Leinwand) darstellen kann ), siehe Antwort # 10670039 - ImageMagick-API für die Befehlszeilen-GUI-Anwendungsschnittstelle zu display- Stack Overflow .

Es ist so gelegentlich, dass ich das `Reload`-Zeug von` eog` JUST YESTERDAY gepatcht habe! Ich hasse diesen Knopf auch! Xiè Jìléi vor 13 Jahren 0
Und, um es mit einer anderen Wahrheit zu sagen, die "Anzeige" stammt von "ImageMagick" und skaliert SVG nicht gut, da die Grafik vor der Anzeige gerastert wurde. Und schlimmer noch, `display` und` rsvg` funktionieren mit einigen meiner SVG-Dateien nicht. Bisher wird nur FireFox korrekt dargestellt. FireFox schlägt alle. Xiè Jìléi vor 13 Jahren 0
Hi @ 谢 继 雷, danke für die Kommentare! Nun, ich habe gerade meinen Beitrag bearbeitet und einen Link zu einem Python-Skript hinzugefügt, das ich gerade zusammengestellt habe - probiere es aus, vielleicht hilft es ... Prost! Auch +1 auf dem "hasse that button" :) [obwohl ich zugeben muss: Ich hätte immer lieber einen Button, um etwas manuell zu tun - als ** nicht **, um es zu haben :) ... ich würde es einfach wie Auto-Refresh extra :)] sdaau vor 13 Jahren 0
4
Jukka Matilainen

Ich bin Dennis Williamsons Empfehlung von ImageMagick display.

Sie können auch Named Pipes verwenden, um Daten an Programme weiterzuleiten, die aus einer Datei lesen.

Beispiel:

mkfifo /tmp/foo.svg cat /usr/share/inkscape/clipart/tux.svg > /tmp/foo.svg & inkscape /tmp/foo.svg rm -f /tmp/foo.svg 

Funktioniert nicht mit Programmen, die erwarten, rückwärts in der Datei suchen zu können.

Diese Verwendung von Named Pipe ist sehr kreativ, danke. Nach einem Versuch habe ich festgestellt, dass es eine Weile dauerte, bis der Startvorgang stattfand. Er ist ein voll funktionsfähiger Editor und kein einfacher Viewer. Xiè Jìléi vor 13 Jahren 0
3
Ray

Es scheint, als würde der Geeqie-Viewer SVG-Grafiken handhaben und die aktualisierten Bilder automatisch laden. Ich weiß nicht, ob es Bilder vom Standard aufnehmen kann. Ich hoffe, es hilft.