Как оптимизировать SVG графику, Или возможные альтернативы SVG |
Здравствуйте, гость ( Вход | Регистрация )
Как оптимизировать SVG графику, Или возможные альтернативы SVG |
igor_bogomolov |
8.4.2010, 16:13
Сообщение
#1
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Уже не первый день мучаюсь со своим проектом, который использует SVG графику. Очень сильно тормозит отрисовка. Никак не найду способ оптимизировать. Перерыл вроде все доки и примеры, ничего толкового не нашел.
На сцене достаточно много элементов, но все они примитивные (линии, прямоугольники). У кого есть опыт работы с SVG графикой, помогите советом, как можно оптимизировать скорость ее отрисовки? |
|
|
Litkevich Yuriy |
8.4.2010, 18:28
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
У кого есть опыт работы с SVG графикой, помогите советом, как можно оптимизировать скорость ее отрисовки? я издевался над примером svgviewer, и помнется мне приемлемый результат получается при использовании буфера (QImage), в котором хранится растровая картинка. Перетаскивание и масштабирование осуществлял для растра, когда пользователь успокоится, в отдельном потоке рисовал на новом буфере, по окончанию рисования, старый удалял новый подсовывал
|
|
|
igor_bogomolov |
8.4.2010, 20:18
Сообщение
#3
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Цитата(Litkevich Yuriy) я издевался над примером svgviewer, Ага, я тоже над ним издевался. Так же теперь использую отрисовку через QImage. Ресайз сцены стал немного менее дёрганный, но тем не менее, тормоза жуткие.Из наблюдений: выяснили, что очень сильно на скорость отрисовки сказывается наличие текста и пунктирных линий. Так же, лучше избегать большого количества мелких элементов. У меня их, к сожалению, много. Удалял скрипя сердцем. При большом увеличении картинки, конечно, потеряли в качестве. Не знаю, что еще можно придумать. Есть какие-нибудь альтернативы? Примеры OpenVG не компилятся, да и боязно как-то к opengl привязываться, могут быть проблемы на некоторых видео картах. |
|
|
SABROG |
9.4.2010, 10:03
Сообщение
#4
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
На самом деле я удивлен, что в Qt нет конвертера SVG в QPainterPath. Возможно в массив таких классов, чтобы слои эмитировать.
|
|
|
Текстовая версия | Сейчас: 28.1.2025, 22:31 |