Переглядач SVG та переглядач файлів зображень в Linux?


36

Чи є програма перегляду графіків командного рядка (з можливістю труби) для файлів зображень SVG та JPG / PNG?

Тим більше, що графічні / графічні файли виводяться через трубопровідну лінію, а не звичайні файли, тому має бути можливість вказати тип / розширення файлу.

Хоча gv працює для PS / PDF, породжених точковими програмами, я хотів би знати, чи є альтернативи для підтримки файлів зображень SVG тощо.


1
просто для уточнення: ваш головний пункт - не відображати .svg, .jpg та .png на консолі ("командний рядок"), а скоріше передавати такі mime-типи звичайній графічній програмі?
акіра

1
Так, я хотів би відобразити в X. Як і gv. Але gv не підтримує SVG тощо.
Xiè Jìléi

gwenviewдосить швидко, цікаво, чи відповідає вашим потребам?
Сила Водолія

Відповіді:


37

Ви спробували displayпрограму, яка постачається з ImageMagick ?


3
AFAIK, Imagemagick поодинці не може відображати файли SVG, йому потрібен інструмент, який перетворює SVG у растрові карти. У Debian sudo aptitude install librsvg2-binце необхідно, якщо "rsvg-convert" ще не встановлений. Пакет також містить переглядач, rsvg-view-3який має кращий масштаб, ніж display.
Mytskine

2
@Mytskine: Відповідно до Документації ImageMagick , вона буде використовувати свій власний внутрішній рендерінг SVG, якщо Inkscape або RSVG недоступні.
Призупинено до подальшого повідомлення.

1
У моїй системі: inkscapeповільно завантажується, inkviewшвидка, але не може змінити вигляд? displayдля мене чудово працює :-)
Х'ю Перкінс

Мені не вдалося отримати роботу з перегляду чорнила з введення труби, але дисплей все одно робить саме те, що я хочу :-) Я використовую його як go run my_svg_generator.go | displaythx.
JepZ

1
УВАГА!!!! не використовуйте дисплей, якщо ви поспішаєте !!! для файлу SVG 500 Кб (аналізу проблем із завантаженням системних систем) знадобилося 20 хвилин, перш ніж я міг знову використовувати свою машину, оскільки для цього було використано 4 ГБ (вимагається 7 ГБ virt.mem) моєї 6 ГБ вже роздутої оперативної пам’яті і було помінено величезну кількість (5 Гб пішов помінятись лише через показ) :(, не впевнений у виконанні будь-якого іншого варіанту візуалізації svg tho., gwenviewдосить швидкий btw
Power Aquarius Power

12

Inkscape вже оснащений власним переглядачем:inkview

У нього відсутні функції, це може бути трохи повільно, але воно працює (і, мабуть, робить SVG точніше, ніж ImageMagick display).


Просто хотів зазначити, що я спробував inkview(я вважаю, від 0,48 inkscape) на Ubuntu 10.04.3, запустився напрочуд швидко! (EDIT: але тільки для малих .svgх, спроби , inkview /usr/share/inkscape/examples/*.svg*як і говорить людина, є деякі важковаговики там теж ... Тим НЕ менше, запуск GUI це швидко.) Дякую за цю ноту, @ DenilsonSá - ура!
sdaau

1
Для дійсно великих SVG-дисплеїв, здається, перегляд чорнила порушується.
CMCDragonkai

10

Що ви маєте на увазі під "трубою"?
fehдуже хороший переглядач командної лінії з тоннами опцій.


1
Я маю на увазі, що він приймає вхід від stdin і, якщо можливо, вгадайте тип MIME. Або вказавши розширення прямо, якщо воно не може відгадати тип файлу евристично.
Xiè Jìléi

11
fehначебто не підтримує SVG; Я отримую " feh WARNING: pySVGLogo.svg - No Imlib2 loader for that file format" ... Ура!
sdaau

1
Ще кілька приміток: перша, feh домашня сторінка , приклади та скріншоти ; друге ( ubuntu 10.04.3 ): запускається дуже швидко; має пакет Debian / Ubuntu; має трохи дивну взаємодію з мишею (див. feh --helpнаприкінці); Я можу завантажити каталог pngs, і натискати або (клавіші зі стрілками) натискати, він завантажується так швидко, що схожий на (або краще, ніж) анімований .gif :)... Привіт!
sdaau

1
@sdaau, feh насправді не підтримує SVG, тому це не є корисною відповіддю в ОП.
Ділан Турстон

8

Я, як правило, працюю з SVG як текстові файли, тому хотів би, щоб глядач автоматично оновлював дисплей, як тільки файл був збережений (і зміст його змінено) - це, мабуть, стосується ситуацій, які можна «відстежувати», я думаю (тобто з назвами труби).

Зауважте, що для програм Gnome за замовчуванням:

  • evinceв даний час працює так, як PDF-файли, але, здається, він не може читати SVG (для мене він створює " Unable to open document - Error opening file: Permission denied", коли я намагався завантажити SVG-файли)
  • eog(Eye Of Gnome) - останні версії - також може виявити, чи змінився файл на цьому, а потім запропонувати кнопку "Перезавантажити"; але, мабуть, вам все одно доведеться натискати кнопку "Перезавантажити" кожен раз (я не бачу способу викликати автоматичне перезавантаження завжди при зміні файлів eog, як це evinceповодиться з PDF-файлами) - а також, принаймні, на моїй eogпідтримці Ubuntu 10.04, SVG дещо порушено (масштабування результатів розмитими лініями)
  • ImageMagick displayне тільки автоматично оновлюється, коли файл змінюється на диску - і навіть при натисканні кнопки «оновити» displayви все одно не отримуєте останню версію файлу (тобто, вам потрібно перезапустити, displayщоб показати останню версію :() .

Ось ще кілька записок, які я знайшов поки що:

  • Стриг, браузер SVG Браузер SVG, який є частиною набору інструментів Batik. - Завантажити Batik batik-1.7.zip; розпакуйте його; біжи java -jar batik-squiggle.jarі ось воно; не оновлює зображення автоматично, якщо файл svg змінився на диску
  • Переглядач зображень SVG? - Рекомендації форумів Ubuntu :
    • У публікації № 8 - " Я написав маленький скрипт python ... Ви просто запускаєте його як: svg_compare.py, і він відкриває svg і відображає його за допомогою бібліотеки svg та за допомогою растрової бібліотеки gtk. Ви можете масштабувати мишею. .. "
    • xsvghttp://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 (24 грудня 10): ну ось і мій внесок: svg_refreshview.py - який в основному є переробкою svg_compare.pyзгаданого вище, що просто показує файл SVG, а також перезавантажує файл і оновить дисплей, якщо файл був змінений . ( він не може реально працювати зі stdin - але в моєму репо є інші сценарії, які розбирають stdin у python, можливо, вони допоможуть ).

EDIT2 (20 травня '12): Також придумав приклад сценарію Perl-Tk, який є дуже грубим ( відсутність взаємодії з мишею, нічого ), але використовує ImageMagick Perl API, і таким чином може рендерувати SVG (як растрові карти на полотні ), див. відповідь №10670039 - API ImageMagick для інтерфейсу додатків GUI командного рядка display- Переповнення стека .


Так буває, я наклеював Reloadречі eogЩО ВІДСТАВ! Я ненавиджу цю кнопку теж!
Xiè Jìléi

І, скажу вам іншу правду, що displayпоходить від ImageMagickнедостатньо масштабування SVG, оскільки він раструював графік перед його відображенням. І ще гірше, displayі rsvgце не працює з деякими з моїх файлів SVG. Досі лише FireFox візуалізує правильно. FireFox б'є всіх.
Xiè Jìléi

Привіт @ 谢 继 雷, дякую за коментарі! Ну - я щойно відредагував свою публікацію і додав посилання на сценарій python, який я просто зібрав - спробуйте, можливо, це допоможе ... Привіт! Також +1 на "ненавидіти цю кнопку" :) [хоча, я мушу визнати: я завжди хотів би мати кнопку, щоб зробити щось вручну - ніж не мати його :) ... Я просто хотів би автоматично оновити додатково :)]
sdaau

4

Я є другою рекомендацією Денніса Вільямсона щодо ImageMagick display.

Крім того, іноді ви можете використовувати названі канали для передачі даних програмам, які читають з файлу.

Приклад:

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

Не буде працювати з програмами, які, як очікується, зможуть шукати назад у файлі.


Використання названої труби дуже креативне, дякую. Після спроби, я виявив, що запустити потрібно багато часу, це повноцінний функціональний редактор, а не простий переглядач.
Xiè Jìléi

3

Здається, переглядач Geeqie обробляє svg графіку і автоматично завантажує оновлені зображення. Я не знаю, чи може це знімати зображення з stdin. Я сподіваюся, що це допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.