LINUX.ORG.RU

Медленное открытие svg-файлов

 ,


0

2

Недавно заметил, что svg-файлы медленно открываются просмотрщиками изображений (проверил на eog и viewnior), ранее открывались так же шустро, как и png, jpg etc.
Подумал про дополнительные зависимости, но тот же eog установлен в полном комплекте. Загрузился с флешки Linux Mint — там те же файлы открываются моментально, посмотрел зависимости и версии eog, кроме librsvg вроде ничего важного не увидел, в Mint у него версия 2.40.2, у меня в Arch — 2.40.15.
Погуглив не нашёл ничего более-менее свежего по этой теме.
А у вас как? В чём же заковырка?

★★★★★
Ответ на: комментарий от anonymous

вот это у меня секунд 10 открывается — https://commons.wikimedia.org/wiki/File:Linux_Distribution_Timeline_with_Andr...

eom

это мэйтовский? так и говорю, что в минте (а там за версиями не гонятся) тоже шустро открывается

поставил eom и тоже самое, видимо в librsvg всё же дело

amorpher ★★★★★
() автор топика
Последнее исправление: amorpher (всего исправлений: 2)
Ответ на: комментарий от amorpher

Да, eom из матэ который. Вот теперь заметна задержка, а то я слишком мелкие файлы открывал. Тормозит на оригинальном файле с разрешением 2220x10150.

anonymous
()

Скорость рендеринга SVG сильно зависит от содержимого. Это нормально. Быстрого и правильного рендера SVG пока не существует.

Лучше всего открывать в Chrome(или любом вебките), он лучше всего с SVG справляется.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

так дело в том, что само отображение файла во вьюере происходит через 10 сек, а в минте так же быстро как и растровые картинки, и тот файл сразу можно увеличивать и прокручивать

amorpher ★★★★★
() автор топика
Ответ на: комментарий от amorpher

Вы попробуйте заскринить оба вариант и сравнить. Есть шанс, что тот, кто быстрее рисует - просто пропускает какие-то фичи. Так как каждый просмотрщик svg рисует его по-своему.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

да также отображает вроде, при увеличении и скролле в минте подтормаживает конечно (и даже падает гномоглаз), но главное что файл сразу открывает

amorpher ★★★★★
() автор топика
Ответ на: комментарий от amorpher

на арче всё колом встало при увеличении, ждал несколько минут пока отпустит

amorpher ★★★★★
() автор топика
Ответ на: комментарий от Psych218

В опере контент обновляется примерно через полсекунды и подлагивает при первой прокрутке.

anonymous
()
Ответ на: комментарий от Psych218

так не про браузеры речь, в опере всё быстро и плавно тоже

amorpher ★★★★★
() автор топика
Ответ на: комментарий от arcanis

gwenview

хм, видать что-то гномовское, хотя в минте кроме версии старее тот же гном3

amorpher ★★★★★
() автор топика
Ответ на: комментарий от arcanis

gwenview открывает быстро, так как использует QtSvg, а не librsvg. Но QtSvg рисует только SVG Tiny 1.2, aka ничего.

Скролл при 100% масштабе дико тугой в gwenview.

Chromium, только Chromium.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

да, посмотрел, librsvg gwenview не нужен

amorpher ★★★★★
() автор топика

Да, потому что одно ядро процессора пердолит. На амуде вообще печально.

anonymous
()
Ответ на: комментарий от anonymous

Задача, мягко говоря, не самая подходящая для распараллеливания

annulen ★★★★★
()
Ответ на: комментарий от anonymous

«амуде» тут вообще при чём? Хоть 10 ядер. Там не в этом проблема.

Просто нормальный рендер SVG - это титаническая работа. Но в вебките смогли ее осилить, пусть и не без косяков.

RazrFalcon ★★★★★
()

В чём же заковырка?

  67,68%  librsvg-2.so.2.40.15                [.] gaussian_blur_line
  14,79%  librsvg-2.so.2.40.15                [.] box_blur_line
   8,69%  [kernel]                            [k] nmi
   2,42%  librsvg-2.so.2.40.15                [.] get_column
   1,96%  librsvg-2.so.2.40.15                [.] put_column

Вот здесь: https://github.com/GNOME/librsvg/commit/054807726db76558728e7a7513aabc4698b3dc95 было изменение, которое затронуло обработку блюра. Собственно, в этом патче самые горячие функции и появляются.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

хз, в минте же работает как-то, в смысле версия 2.40.2, открывает в разы шустрее для просмотра, из аура попробовал версии и те же тормоза

amorpher ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

да я понял, но в mint версия 2.40.2 и eog работает шустрее чем с более новым librsvg в arch, пусть хоть не всё отрисовывает, как раньше viewnior вообще не отображал svg вектором (при увеличении выглядело как растр, не знаю как и чем он это делал), нахрена в просмотрщики тащить в зависимости то, что так тормозит? это же не inkscape в конце концов

или я не так понял и этот патч и вызывает тормоза?

amorpher ★★★★★
() автор топика
Последнее исправление: amorpher (всего исправлений: 1)
Ответ на: комментарий от amorpher

или я не так понял и этот патч и вызывает тормоза?

Да. Они фиксили баги в отрисовке. Она стала корректнее, но медленнее.

По крайней мере, так следует из описания.

i-rinat ★★★★★
()
Ответ на: комментарий от RazrFalcon

ясно
надо значит по уму форкать либу — одну версию для редакторов, другую для просмотрщиков, одну шуструю, но не точную, другую точную, но медленную

amorpher ★★★★★
() автор топика
Последнее исправление: amorpher (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Они фиксили баги в отрисовке. Она стала корректнее, но медленнее.

теперь дошло
впрочем как обычно — одно делают, другое ломают

amorpher ★★★★★
() автор топика

выдрали бы из webkit давно нужное и сделали смотрелку нормальную

amorpher ★★★★★
() автор топика

Эврика!

вспомнил про Nomacs
не тянет кедолибы и шустрый как электровеник

и само собой не требует librsvg

это вот — https://upload.wikimedia.org/wikipedia/commons/b/b5/Jupiter_diagram.svg открывает влёт за полсекунды и увеличивает/прокручивает тоже моментом

amorpher ★★★★★
() автор топика
Последнее исправление: amorpher (всего исправлений: 2)
Ответ на: Эврика! от amorpher

и qt5-svg все ядра задействует, в отличии от librsvg

amorpher ★★★★★
() автор топика
Ответ на: Эврика! от amorpher

Ага, потому, что криво рисует. Они пишут что у них «Full SVG support», а на деле QtSvg, который ничего не умеет.

В файле Юпитера посмотрите на сияние у полюсов и тень у планеты, которая слева, в nomacs и inkscape/webkit.

А то я уж подумал, что кто-то таки запилил нормальный SVG.

// тестил на 2.4.6.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Да, но по мне в данном случае лучше уж пусть не совсем верно отображает, но зато быстро работает.

amorpher ★★★★★
() автор топика
$ time rsvg-convert Jupiter_diagram.svg > jupiter.jpg 
55.79s user 0.14s system 99% cpu 55.943 total

$ time convert Jupiter_diagram.svg jupiter.jpg  
48.33s user 0.20s system 450% cpu 10.772 total

$ pacman -Qi librsvg | grep Version
Version         : 2:2.40.15-1

Подтверждаю анонимуса, пердолит в одно ядро. ImageMagick рендерит через Инкскейп. Другие, типа быстрые движки халтурят на блёре, инфа 100%.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.