Переглядач 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. Ви можете масштабувати мишею. .. "
    • xsvg(з 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 (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.