LINUX.ORG.RU

Отчёт о поддержке WMF


0

0

На сайте sK1 Team опубликован отчёт о поддержке WMF в разных программах.
Протестировано 14 приложений, создан набор файлов для тестирования примерно 50 функций в различных режимах.

Из заключения:
"Наиболее полезная документация на формат файлов MS была создана разработчиками свободного ПО.
И теперь история повторяется с ECMA-376"

>>> Подробности

anonymous

Проверено: svu ()

>Наиболее полезная документация на формат файлов MS была создана разработчиками свободного ПО.

Так как идусы микрософта не умеют толком написать спеки придуманного формата.

AiFiLTr0 ★★★★★
()

К сожалению без поддержки их форматов рынка не захватить.

georgii
()
Ответ на: комментарий от X-Pilot

> WMF не нужен!

WMF активно используется в стенсилах Visio, откуда попадает в файлы диаграмм. Без адекватной поддержки WMF/EMF(+) о нормальном импорте VSD/VSS (подозреваю что и VDX тоже, не присматривался) можно не задумываться. Конечно если речь идёт о реальных файлах, а не о палочках-кружочках.
Dia не поддерживает импорт ни WMF, ни EMF. Kivio вероятно может шарить код с karbon14, так что полшажка в нужном направлении сделано.

/frob

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

Если я правильно понимаю, то EMF(+) - это последовательность команд рисования для GDI(+)? Если так, то речь идет о том, чтобы научить конвертор имитировать работу GDI(+), или по-другому научить конвертор "думать" как GDI(+)?

Просто пара мыслей на экране :)

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

2 dave:

WMF -- это тоже сохранённая в файле последовательность команд GDI.
Основная проблема с EMF+ в том, что _единственная_ опубликованная
рабочая документация по формату -- результат реверс-инжиниринга
выполненного jhtodd.
Существует также некоторое количество кода написанного Радеком Дуликом
для Novell-овского форка OO.org, если он его выложил, конечно.
Но даже если так, использовать код OO.org где-нибудь ещё крайне
проблематично (в WMF/EMF импортёре OO.org до сих пор часть комментариев
на немецком =). Использовать этот код в качестве документации, также
гхмм... затруднительно.

/frob

anonymous
()

Там написано, что *MSOffice 2k3* не поддерживает "Line Caps/Joins" и "Техt orientation"!

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

Вот, может быть, пригодится :)

http://msdn2.microsoft.com/en-us/library/system.drawing.imaging.emfplusrecord...(VS.90).aspx

Пока общее впечатление такое, что команды GDI+ очень хорошо ложатся на методы класса System.Drawing.Graphics, и они, видимо, идут без префиксов Emf и Wmf (??).

dave ★★★★★
()

Большую работу проделали.

Я не понял из статьи: отправляли ли багрепорты на Inkscape? Или это бесполезно?

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

Во-первых, речь о коде libwmf, а не о коде Inkscape.

Во-вторых, так исторически сложилось, что авторы Inkscape не любят заниматься поддержкой других форматов (это заметно уже по тому хотя бы, что единственный растровый формат экспорта - PNG). В некотором смысле, импорт PDF/AI в 0.46 --- прорыв, и то благодаря Google :)

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

И ещё не понял: прогоняли ли все эти файлы через собственно GDI Windows? И если да, нормально ли обработались "намеренно неправильные"?

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

> речь о коде libwmf, а не о коде Inkscape.

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

libwmf используют несколько программ, но Inkscape показал худшие результаты. Проблема в Inkscape или разные версии библиотеки?

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

> libwmf используют несколько программ, но Inkscape показал худшие результаты.

# libwmf gdk_pixbuf loader
# wmf2svg
# wmf2x

Я один вижу разницу между "загрузчиками"? :)

Кстати, frob, надо бы версию Inkscape указать, раз такие дела ;)

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

> Зачем это нужно, кроме клипарта к ворду?

Достаточно много встречал узкоспециализированных программ, которые знают только 2 формата для экспорта картинок: WMF и BMP. Не далее как 6-го вечером надо было срочно переделать презентацию, для чего требовалось создать WMF, слегка его подчистить и вставить в PPT. На работе есть МСОфис и Корел, всё просто; дома запустил Inkscape и жестоко обломился :(

В результате пришлось долго и нудно ковырять режимы экспорта. В итоге проспал, пришлось на такси тратиться :\

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

> Я один вижу разницу между "загрузчиками"? :)

Всё понял, невнимательно прочёл первую страницу. Пора спать...

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

"Неправильные" нормально отображались Word-ом.
Проблемы с такими файлами возникают тогда, когда для вычисления длины из правой (нижней) координаты вычитают левую (верхнюю). Если брать модуль получающегося значения, то проблемы исчезают. У некоторых приложений от отрицательных значений длин сносит башню.

Версия Inkscape (также как и EoG) в данном случае роли не играет.
У меня в системе 0.45.1.
Не знаю использует ли кто-нибудь ещё и знает ли вообще про wmf2svg,
а Inkscape заведомо использует именно это.
Если в отчёте написать wmf2svg и убрать Inkscape, то весьма вероятно
будут возникать два вопроса: "а чо такое wmf2svg?" и "а чо Inkscape не проверили?"

Багрепорты на Inkscape не отправляли, по причинам указанным AP -- не вполне их ошибки.
На libwmf баг повесили http://bugzilla.abisource.com/show_bug.cgi?id=11106, пофикшено это скорее всего не будет никогда, т.к. Доминик от этого дела открещивается, а других желающих не видно.

Для кода в нормально поддерживаемом состоянии дела обстоят гораздо лучше: посмотрите на karbon14 -- одно обращение к разработчику, пересылка пачки файлов и voila.

/frob

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

ну дык "если написано на "заборе" что импортирует wmf, это не всегда верно :) причем и для аппликух от вполне "взрослых дядей"

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

> "а вы говорите - бесплатный линукс, бесплатный линукс" =))

Если бы я полгода назад потратил лишний день, чтобы освоить открытый эквивалент той закрытой программы, то смог бы сделать нужный рисунок минуты за 2. То есть если переходить -- переходить полностью, без пользования старыми программами под wine-ом.

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

> "Неправильные" нормально отображались Word-ом.

Это я понял. Мне было любопытно именно насколько поддерживается формат средствами "голой" Windows.

> пофикшено это скорее всего не будет никогда

Понятно.

Ещё раз спасибо за столь детальный анализ.

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

>смог бы сделать нужный рисунок минуты за 2

Тем неменее импортеры нужны, т.к. не всякий рисунок можно в 2 минуты воспроизвести. На некоторые логотипы можно и пару дней кропотливого труда извести.

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

> Тем не менее импортеры нужны

Ни разу с этим не спорил. Хотя бы для работы со старыми файлами, накопленными за много лет, и для взаимодействия с людьми на другой платформе. Я только говорил, что на своём личном компьютере лучше иметь более однородную систему :)

acheron ★★★★
()

Хорошее дело. Несколько раз встречались рисунки в формате wmf. Всё кончалось тем, что просто их перерисовывал.

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

> Пока общее впечатление такое, что команды GDI+ очень хорошо ложатся на методы класса System.Drawing.Graphics, и они, видимо, идут без префиксов Emf и Wmf (??).

Ну дык. System.Drawing - это не более чем .NET-обёртка для GDI+.

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