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

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

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

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: « 1 2 3 4 5 »   Вниз
  Печать  
Автор Тема: LibreOffice 4.x.x - тормоза с SVG  (Прочитано 33172 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ape
Форумчанин
***
Offline Offline

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


« Ответ #30: 18 Март 2013, 06:05 »

Имеет -- получается, что LO4 и LO3.6 по-разному трактуют содержимое, что приводит к потере данных.
Это не совсем так:
Цитата:
Действительно, 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-файла (не исходному размеру изображения - !).
При пересохранении файла, созданного LO-4.x.x, LibreDraw-3.6.5 убирает SVG, потому что этот рисунок дублирует PNG и программой LDraw_4.х.x был размещёнется на странице в том же самом месте повторно. Из 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/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>
Грустный Фридрих, имхо, и без перевода всё бы понял...
 
 
« Последнее редактирование: 18 Март 2013, 06:26 от ape » Записан
frob
Гость
« Ответ #31: 18 Март 2013, 06:45 »

При пересохранении файла, созданного LO-4.x.x, LibreDraw-3.6.5 убирает SVG, потому что этот рисунок дублирует PNG


Вставленный в 3.6 SVG при проходе через 4.x и 3.6 превращается в PNG.
На мой взгляд это потеря данных.

Цитата:
Фридрих, имхо, и без перевода всё бы понял...
Он довольно сносно говорит по-русски, но в багзиллу LO всё-тки принято писать на английском.
Кроме того, заниматься таким багом весьма вероятно будет кто-то другой.
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #32: 18 Март 2013, 06:58 »

В качестве примера - 2 файла:
Novak_410_edit.odg - в этом файле context.xml отредактирован: в ссылках на изображения *.png и *.svg рисунки поменялись местами. Этот файл LO-3.6.5 откроет как надо, без потери качества.
Novak_410_edit_as_365.odg - это результат пересохранения предыдущего файла в LO-3.6.5. В этом файле сохранён только *.svg, а *.png удалён как дублирующий. Ссылки на *.png в content.xml теперь тоже нет.
--
Цитата:
Вставленный в 3.6 SVG при проходе через 4.x и 3.6 превращается в PNG. На мой взгляд это потеря данных.
Я не спорю, но боюсь, что "блокер" с моей стороны в этом случае даст обратный эффект: "Опять этот русский.."


[вложение удалено Администратором]
« Последнее редактирование: 18 Март 2013, 07:16 от ape » Записан
frob
Гость
« Ответ #33: 18 Март 2013, 07:14 »

Я не спорю, но боюсь, что "блокер" с моей стороны в этом случае даст обратный эффект: "Опять этот русский.."
А не надо "блокер".
Достаточно показать, что "брюки превращаются... превращаются брюки...".
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #34: 18 Март 2013, 07:17 »

Mеханизм (алгоритм) ошибки довольно прост. LibO-4.x.x при вставке SVG создаёт дублирующий растр в PNG, подгоняя размер PNG под заданный изменением DPI. Для ускорения отрисовки {-?} PNG-рисунок помещается в тело файла, а в content.xml перед ссылкой на SVG добавляется ссылка на PNG (иначе, зачем огород городили?). В результате имеем регрессию. Автора бы в студию: хотел сделать как лучше, а получилось, как всегда..
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #35: 18 Март 2013, 07:44 »

Пока не знаю, как сформулировать, но это действительно "блокер". LO-4.x.x при вставке SVG создаёт ODG файл, имеющий нарушение формата. ЛО-4 создаёт в ODG файле дополнительное дублирующее изображение PNG формата. При этом, в описании файла (content.xml) указано место для размещения только одного, PNG, изображения.
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #36: 18 Март 2013, 12:50 »

С учётом замечаний: https://bugs.freedesktop.org/show_bug.cgi?id=62461
@frob: Если у Вас есть возможность, то, пожалуйста, подтяните кого-нибудь к багу.
« Последнее редактирование: 19 Март 2013, 11:00 от ape » Записан
frob
Гость
« Ответ #37: 18 Март 2013, 17:24 »

Если у Вас есть возможность, то, пожалуйста, подтяните кого-нибудь к багу.

"thorsten> frob_tea: ah I see - so 3.6 is the problem then"

Мне эта позиция непонятна, разъяснений пока не получил.

Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #38: 18 Март 2013, 21:35 »

Если верить ReleaseNotes 4.0, то главный кандидат на "враг народа"
Цитата:
Multi-image support in ODF allowing a bitmap + SVG representation eg. (Armin Le-Grand - Apache)
Если правильно помню, то реализация вставки SVG отличалась ещё на стадии ООо-3.4.0_бета_07.4.2011 vs LOdev-3.4.0.0.
Если у Вас есть возможность, то, пожалуйста, подтяните кого-нибудь к багу.
"thorsten> frob_tea: ah I see - so 3.6 is the problem then"
Мне эта позиция непонятна, разъяснений пока не получил.
Торстен считает, что 3.6 работает с ошибками? Полный бред - пусть выполнит 11 пунктов. Если этого мало, могу добавить комментарий по ручному редактированию content.xml
Может быть Фридриху наябедничать?
« Последнее редактирование: 18 Март 2013, 21:49 от ape » Записан
frob
Гость
« Ответ #39: 19 Март 2013, 03:27 »

Может быть Фридриху наябедничать?
1. Не на что
2. Бесполезно

Добавьте лучше к багу "исходный" файл сохранёный из 3.6, его же пересохранённый из 4.0, и ещё раз пересохранённый из 3.6.
Посмотрим удастся ли убедить переложить этот PNG в 'ObjectReplacements'.

Этот патч ALG возможно перетаскивал Микс. Попробую завтра пингануть.
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #40: 19 Март 2013, 06:47 »

Пока добавил 3 комментария: по ручному редактированию файла content.xml ; скриншот по потере качества вывода на дисплей; про ApacheOO-3.4.1.
--
Написал в Document Foundation Mail Archive  › LibreOffice  › QA
Если до воскресенья не будет хоть какой-нибудь реакции, забью "блокер" - зашевелятся (П.М.).
--
P.S. ИМХО. В ЛО-4 и АОО-3.4.1 закрывается загрузка графики после ссылки на 1-й, PNG, файл
Цитата:
<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">
Но главное - это отсутствие места (выделено зеленью) для размещения 2-го изображения. Поэтому его на дисплее (печати) нет и быть не может. Зачем тогда оно в теле файла?
« Последнее редактирование: 19 Март 2013, 12:05 от ape » Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #41: 19 Март 2013, 17:45 »

Есть ответ Микса, пока проблема в понимании классического английского.
Записан
frob
Гость
« Ответ #42: 19 Март 2013, 20:00 »

Есть ответ Микса, пока проблема в понимании классического английского.

Ну, краткая версия такая: "Ой... кажется всё работает хуже, а не лучше" =)

Он предполагал, что добавление сохранения нескольких изображений будет влиять только на те открывашки ODF, которые сами рендерить SVG не умеют, а LO это вообще не коснётся.
Для таких приложений LO подкладывал свинью PNG.

Он похоже решил, что LO 4.0 рендерит SVG хуже чем 3.6 (что вполне возможно).
И считает это главной частью проблемы.

(Даже не хочется его разубеждать =)
Записан
ape
Форумчанин
***
Offline Offline

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


« Ответ #43: 19 Март 2013, 21:16 »

Ну, краткая версия такая: "Ой... кажется всё работает хуже, а не лучше" =)
1. Спасибо
2. Ваши комментарии мне понятны  Улыбка
3. Всё-таки (по времени открывания файлов) мне кажется, что беда ЛО-4 заключена в рендеринге, который, несмотря на наличие PNG, выполняется каждое открывание файла. Обратите внимание, что в content.xml изображение описано как SVG (прим., 21 марта. Это моя ошибка: "svg" описывает положение на странице изображения любого доступного формата  Грустный):
<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">
В файле "пригласи_365", с которого всё началось, такой рендеринг 2-х SVG выполняется ЛО-4 2x2=4 раза - вот и тормоза... Интересно, если один и тот же SVG вставить 10 раз, то дождёмся ли мы с Вами от ЛО-4 итоговой экранной картинки?
Поэтому я нагло написал о бессмысленности переноса кода АОО в ЛО-4.
« Последнее редактирование: 21 Март 2013, 09:26 от ape » Записан
frob
Гость
« Ответ #44: 19 Март 2013, 23:07 »

о бессмысленности переноса кода АОО в ЛО-4.

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

АОО выложило страничку в wiki с картинками чего понафиксили. Я подёргал разных людей, но каким-то мистическим образом это всё свалилось обратно на Фридриха. Он несколько фиксов портировал, а про остальное сказал -- "ну его нафиг, один кейс фиксит, два ломает. надо фиксить по-другому."
Записан
Страниц: « 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!