Соединение "Mitre" в изображении EMF не правильно отображается в Word

319
Martin Herrmann

В векторной графике, как правило, визуализируются углы пути тремя способами: митра (то есть заостренная), скос (то есть обрезанный) и округление: пример (у меня недостаточно репов для публикации изображений). Моя цель - создать образ с Inkscape (версия 0.92.2) и встроить его в Microsoft Word (версия 2010) в формате EMF.

Приведенный выше пример показывает, как изображение выглядит в Inkscape. Когда я сохраняю изображение в EMF и открываю его с помощью средства просмотра, интегрированного в Windows, результат в основном тот же: снимок экрана из средства просмотра изображений Windows .

Однако, когда я вставляю изображение в Word, соединение "mitre" отображается неправильно и выглядит как соединение "bevel": снимок экрана из Word . Проблема сохраняется, если я распечатываю файл из Word или экспортирую его в PDF. Удивительно, но если я щелкну правой кнопкой мыши изображение в Word и выберу «Сохранить как изображение», полученное растровое изображение (PNG) будет правильным.

Учитывая, что средство просмотра изображений Windows отображает EMF, как и ожидалось, кажется, что он был правильно сохранен Inkscape. Как я могу заставить Word также правильно его отображать?

0
Еще два замечания, сделанные при исследовании проблемы: (1) PowerPoint 2010 имеет ту же проблему, и (2) Он отображается правильно, если используется файл EMF +, а не простой файл EMF. К сожалению, не представляется возможным экспортировать EMF + из Inkscape. Martin Herrmann 6 лет назад 0
Больше точек данных: Office 2013 в Windows 10 имеет ту же проблему. MS Paint на Windows 10 растеризует изображение правильно. Martin Herrmann 6 лет назад 0
Word 2016 в Windows 7 имеет ту же проблему. Word 2016 на Mac показывает изображение правильно. Martin Herrmann 6 лет назад 0

1 ответ на вопрос

0
Martin Herrmann

Похоже, что Word неправильно определяет предел митры. Обходной путь, если предел изображения не относится к изображению, состоит в удалении всех записей U_EMRSETMITERLIMIT из файла EMF. Вот инструмент для этого, использующий libUEMF .

Интересно, что проблема не возникает, если файл EMF содержит какой-либо текст (обратите внимание, что при экспорте из Inkscape опция «Преобразовать текст в пути» должна быть снята).