Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

19 Апрель 2019, 07:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Часто задаваемые вопросы по LibreOffice и Apache OpenOffice.org
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: « 1 2 3 4 5 »   Вниз
  Печать  
Автор Тема: LibreOffice 4.x.x - тормоза с SVG  (Прочитано 33089 раз)
0 Пользователей и 1 Гость смотрят эту тему.
frob
Гость
« Ответ #15: 16 Март 2013, 08:40 »

перевода UI_LO на GTK_3. Может быть, причина в этом.
Переводятся различные диалоги, на скорость отрисовки файла это влиять не должно вообще.
(Более того, что-то мне подсказывает, что cairo будет работать быстрее чем LO-шное двигло).

Я не очень понял "схему" смены форматов. Если файл содержащий SVG (сохранён в 3.6.5) пересохранить из 4.0.1.2, то сохраняется SVG+PNG?
Зачем временно генерировать PNG -- более-менее понятно: растрируем SVG, прикапываем результат, при необходимости отрисовки используем ранее прикопаное (хотя LO вроде в таких случаях пытается свой собственный SVM использовать, да и кэшировать можно было бы просто растр). Сохранять же этот временный PNG в файл смысла нет.

Для масштабирования растра вроде прикрутили Ланцоша, как это влияет на умедление не знаю.

Лениво тащить-распаковывать... скажите, градиенты в этих SVG есть?
Записан
greenman
Форумчанин
***
Offline Offline

Сообщений: 244


« Ответ #16: 16 Март 2013, 08:53 »

Я не очень понял "схему" смены форматов. Если файл содержащий SVG (сохранён в 3.6.5) пересохранить из 4.0.1.2, то сохраняется SVG+PNG?
Именно так. Насколько я понял (не уверен, что правильно) из написанного здесь - из-за того, что в исходном файле рисунки были дублированы. А если уже получившийся файл пересохранить в 3.6.5, то остаётся только png.

Вот эти картинки:

http://openclipart.org/detail/3024/balloon-border-by-revans2
http://openclipart.org/detail/5595/birthday-cake-by-dstankie

На второй точно виден градиент.
« Последнее редактирование: 16 Март 2013, 08:56 от greenman » Записан
frob
Гость
« Ответ #17: 16 Март 2013, 09:11 »

На второй точно виден градиент.
И не только виден, но и в тексте есть...

Возможно в этом проблема. С поддержкой градиентов всё было туго, над этим работали. Неисключено, что наблюдаются результаты этой работы.
Я б на Вашем месте баг в багзилле открыл бы.
Записан
greenman
Форумчанин
***
Offline Offline

Сообщений: 244


« Ответ #18: 16 Март 2013, 09:25 »

Я б на Вашем месте баг в багзилле открыл бы.
О тормозах? Или о образовании png+svg?

Попробовал открыл priglas_365 в LibreDraw 4.0.1.2, удалил все рисунки, кроме одного (balloon-border-by-revans2) и одного текстового поля. Сохранил. Внутри опять svg+png, и тормоза при открытии.

То же самое, но оставил только birthday-cake-by-dstankie. Внутри опять svg+png, тормоза при открытии заметно меньше.
Что, впрочем, объяснимо с точки зрения размера svg:
Код:
dstankie_Birthday_cake.svg 199669
revans2_Balloon_Border.svg 554374

Создал файл с нуля в LibreDraw 4.0.1.2, вставил dstankie_Birthday_cake.svg. Внутри опять svg+png, тормоза при открытии примерно как в предыдущем случае..

Т.е. svg+png - это не бага, это фича?

https://bugs.freedesktop.org/show_bug.cgi?id=61549 --  в файле приложенном для этого бага внутри тоже svg+png. Но, видимо, при сохранении что-то глючит, и файлов svg меньше. М.б. поэтому валится при открытии...
« Последнее редактирование: 16 Март 2013, 09:46 от greenman » Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #19: 16 Март 2013, 10:39 »

Я не очень понял "схему" смены форматов. Если файл содержащий SVG (сохранён в 3.6.5) пересохранить из 4.0.1.2, то сохраняется SVG+PNG?
Как работает 3.6.5 не знаю (ну нет её пока у меня). В 4.х.х происходит следующее:
1. Если в новый ODG "Insert > Picture > From_file : ***.svg", то в
- new.odg/Picturies/.. присутствуют как ***.svg, так и растровый импортный PNG c непонятным DPI;
- new.odg/content.xml содержит ссылки на ОБА объекта
Цитата:
- <office:body>
- <office:drawing>
- <draw:page draw:name="page1" draw:style-name="dp1" draw:master-page-name="Default">
- <draw:frame draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="116.899cm" svg:height="25.199cm" svg:x="1cm" svg:y="30.615cm">
  <draw:image xlink:href="Pictures/10000201000005F3000001484CF701B4.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" />
- <draw:image xlink:href="Pictures/101D738500022ADA0000779DACC7D2B8.svg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
  <text:p />
  </draw:image>
  </draw:frame>
  </draw:page>
  </office:drawing>
  </office:body>
2. Если использовать "File > Open : ***.svg", то запустится Draw, который и откроет (отрисует) файл несколько иначе, и сохранит SVG_open.odg без создания в нём папки Pictures.
--
Чтобы убедиться в "качестве" можно в Inkscape посмотреть на исходный SVG, который есть в Novak_410_insert.odg/Picturies/..
Это и есть тестовый файл (~1,83 MB) Кристофа, по которому оцениваю SVG-успехи офисных пакетов и GIMPа.



[вложение удалено Администратором]
« Последнее редактирование: 16 Март 2013, 11:04 от ape » Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #20: 16 Март 2013, 11:57 »

priglas_365.odg -- фактически он и есть. Я создал файл в LibreDraw 3.6.5 "с нуля", вставив в него svg картинки (на всякий случай - картинки с openclipart.org).
Действительно, LO-4.x.x при пересохранении файла под другим именем добавляет растровые изображения в PMG-формате вставленных SVG-файлов в file.odg/Pictures/.. При этом в content.xml вставка рисунка
Цитата:
<draw:frame draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="8cm" svg:height="10.35cm" svg:x="11.5cm" svg:y="2.15cm">
- <draw:image xlink:href="Pictures/200000010000545600006D24A7271475.svg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
  <text:p />
  </draw:image>
  </draw:frame>
приобретает такой вид
Цитата:
<draw:frame draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="8cm" svg:height="10.35cm" svg:x="11.5cm" svg:y="2.15cm">
  <draw:image xlink:href="Pictures/100002010000026E00000324983C42CB.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad" />
- <draw:image xlink:href="Pictures/200000010000545600006D24A7271475.svg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
  <text:p />
  </draw:image>
  </draw:frame>
При этом, LibreDraw_4.x.x определяет и устанавливает DPI создаваемому PNG-файлу так, чтобы его размер был равен размеру вставленного SVG-файла (не исходному размеру изображения - !).
Т.о. можно говорить о регрессивной ошибке - создании дублирующего PNG-изображения, которое вставляется поверх {-??} вставленного SVG-рисунка.
@frob: Ваше мнение?
« Последнее редактирование: 16 Март 2013, 12:31 от ape » Записан
greenman
Форумчанин
***
Offline Offline

Сообщений: 244


« Ответ #21: 16 Март 2013, 12:18 »

Как работает 3.6.5 не знаю (ну нет её пока у меня). В 4.х.х происходит следующее:
1. Если в новый ODG "Insert > Picture > From_file : ***.svg", то в

Вставил картинку  в 3.6.5, отличий от Inkscape не заметил (м.б. плохо искал). На всякий случай кроме скриншота выложу и файл odg, хотя это вряд ли что даст.

Если открыть svg как файл - да, отличия существенные.



[вложение удалено Администратором]
« Последнее редактирование: 16 Март 2013, 12:34 от greenman » Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #22: 16 Март 2013, 12:40 »

Вставил картинку  в 3.6.5, отличий от Inkscape не заметил (м.б. плохо искал)
Этого достаточно, т.к. нет только части текста (выше и ниже таблицы). Радует то, что от ОС это не зависит (у Вас, имхо, DEB-пакет).
--
Буду ставить 3.6.5, чтобы попробовать отписаться по НОВОМУ (отметку "дублирующий" могут и разрабы поставить) регресивному багу. Регрессия возможно позволит:
либо статус поднять до "критическая", но я делал это уже несколько раз, поэтому мой статус не поможет  Плачущий
либо просить frob обратить на ошибку чьё-нибудь внимание.
« Последнее редактирование: 16 Март 2013, 12:43 от ape » Записан
greenman
Форумчанин
***
Offline Offline

Сообщений: 244


« Ответ #23: 16 Март 2013, 12:44 »

нет только части текста (выше и ниже таблицы)
Протупил, что этот текст - тоже часть svg.

(у Вас, имхо, DEB-пакет)
Выше я приводил - Версия 3.6.5.2 (ID сборки: 3.6.5.2 Arch Linux build-1). В арче маинтейнеры сами собирают пакет из исходников.
« Последнее редактирование: 16 Март 2013, 12:45 от greenman » Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #24: 16 Март 2013, 13:05 »

LOdev-4.1.0.0+ отрисовывает вставленный SVG значительно хуже, чем Ваша версия. Да и текст, например, теперь не текст вовсе, а часть картинки. Регрессия в полный рост  Да уж...

[вложение удалено Администратором]
« Последнее редактирование: 16 Март 2013, 14:58 от ape » Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #25: 16 Март 2013, 15:15 »

Качество импорта SVG у 3.6.5 и 4.1.0 (Файл - Открыть: file.svg) одинаковое.

[вложение удалено Администратором]
Записан
ape
Форумчанин
***
Offline Offline

Сообщений: 2 468


« Ответ #26: 16 Март 2013, 16:31 »

@frob: не найдётся ли у Вас немного времени взглянуть на мой "рашн-инглиш"?
Цитата:
The loss of image quality if picture inserted as the SVG file.
LibreOffice-4.x.x does inserts SVG files with lower quality than it does by LibreOffice-3.6.5. Look at the picture that is in the attached archive. You can see that LibreOffice-3.6.5 does this job perfectly.
 But LibreOffice-4.x.x creates ODG file that different from ODG file produced by LibreOffice-3.6.5.
 1. In the folder "***.ods/Pictures/.." creates additional bitmap file of a PNG format. LibreDraw-4.x.x assigns the image's resolution (DPI) that image so that when printed on a display the size of a PNG image was equal to the size of the Insert (SVG). The SVG file’s text is converted to a part of the PNG image.
2. Content.xml file contains 2 links to images that need to be put in the same place of the ODG file. 1st link points to a PNG image. 2nd link points to a SVG file.
This is a regression LibreOffice-4.x.x.
The SVG file can be extracted from any ODG files from the attached archive. The picture is taken from the official website of The Community.
В архив складываю: Novak_365_insert.odg; Novak_410_insert.odg и этот скриншот.
Нашёл одно отличие в 3.6.5 (Linux vs Windows): в Win_OS игнорируется шрифт (Вегур, установлен).


[вложение удалено Администратором]
« Последнее редактирование: 17 Март 2013, 08:58 от ape » Записан
frob
Гость
« Ответ #27: 17 Март 2013, 17:19 »

@frob: не найдётся ли у Вас немного времени взглянуть на мой "рашн-инглиш"?
Цитата:

Очень как-то всё сложно и путанно.
Предлагаю для начала сделать просто и по-русски.
Насколько я понимаю, сделать надо следующее:
1. Создать в 3.6.5 документ, вставить прилагаемый SVG.
2. Сохранить.
3. Распаковать ODF, проверить, что внутри только SVG.
4. Открыть этот документ в 4.0.x, пересохранить.
5. Распаковать и убедиться, что там теперь и SVG и PNG.

Приложить к багу: SVG, документ сохранённый из 3.6.5 и документ пересохранённый из 4.0.x.

Правильно?
Записан
greenman
Форумчанин
***
Offline Offline

Сообщений: 244


« Ответ #28: 17 Март 2013, 17:26 »

Пункт 4 не обязателен.

1. Создать в 3.6.5 документ, вставить прилагаемый SVG.
2. Сохранить.
3. Распаковать ODF, проверить, что внутри только SVG.

1. Создать в 4.0.x документ, вставить прилагаемый SVG.
2. Сохранить.
3. Распаковать ODF, убедиться, что там и SVG и PNG.

Если имеет смыл, то ко второй части можно добавить:
4. Открыть этот документ в 3.6.5, пересохранить.
5. Распаковать и убедиться, что там теперь только PNG.
« Последнее редактирование: 17 Март 2013, 17:38 от greenman » Записан
frob
Гость
« Ответ #29: 17 Март 2013, 18:20 »

Если имеет смыл, то ко второй части можно добавить:
4. Открыть этот документ в 3.6.5, пересохранить.
5. Распаковать и убедиться, что там теперь только PNG.

Имеет -- получается, что LO4 и LO3.6 по-разному трактуют содержимое, что приводит к потере данных.
Исходный "пункт 4" позволяет обойтись одним пунктом вместо двух.

По поводу "тормозов".
1. Можно упомянуть в этом же баге, что LO4 значительно теряет в отзывчивости.
2. Если есть охота поковыряться в градиентах дело или нет -- наваять пару простых файлов: в один впихнуть пару десятков прямоугольников со сплошной заливкой, в другом один десяток выкинуть, из оставшихся половину окрасить разными градиентами.
Сравнить как оно себя ведёт с этими файлами. (Во избежание всяких интересных побочных эффектов при масштабировании и пр. изображение сделать заведомо влезающим на страницу.)
Записан
Страниц: « 1 2 3 4 5 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!