Векторная графика

Работа с файлами и базами данных

Векторная графика

Postby alerm on 09 May 2018, 11:32

Заметил одну особенность работы с векторной графикой в :labview: и решил поделиться с порталом.

Итак, по порядку:
- скажем, у нас есть простенькая (или не очень) программа, основная задача которой — визуализация данных:
Untitled 3.vi
сама программа, если кому интересно
(23.92 KiB) Downloaded 25 times

и мы решаем сохранить данные в векторной форме;
- самое простое — это сохранить в формате .emf, делаем, вставляем в ворд:
Снимок.PNG

как видно из рисунка: качество хромает, название вертикальной оси странное и жирное;
- а если нужно запятые поменять на точки или ещё что-то, берем для этого любую программу для работы с векторной графикой (в моем случае — это Inkscape), получаем:
Снимок1.PNG

получается как-то странно (рандомный факт: странно, что слезли только шрифты и подпись оси, просто раньше у меня вообще не получалось графика, если загружать .emf);
- делаем как надо, экспортируем в .png и закидываем в ворд:
Снимок2.PNG
простите, что не сделал красиво

ну нормально;
- сохраняем в .pdf, получаем:
Снимок3.PNG

т.е. всё норм;
- теперь проблема с самой .pdf, ибо оказывается, что такие файлы IEEE не кушает, выдает ошибки по шрифтам, нужно сохранять с параметром "Совместимый с ISO 19005-1 (PDF/A)", ладно, делаем:
Снимок4.PNG
нет слов

получаем ужас;
- попробуем сохранить в векторе, зачем нам этот посредник, сохраняем в .emf, в ворде:
Снимок5.PNG
так себе
Снимок5.PNG (8.46 KiB) Viewed 828 times

в PDF/A:
Снимок6.PNG

потерялись оси;
- попробуем сохранить в .wmf, в ворде:
Снимок7.PNG
вроде норм

в PDF/A:
Снимок8.PNG
хм

как ни странно, но всё вышло нормально (вспоминаем рандомный факт выше, раньше я почему-то так сделать не мог);

UPD: не всё так радужно, смотрим ниже почему этот формат не подходит;

- как делалось раньше (ибо только так получалось): экспортировалось в .eps и сразу проблема с Inkscape: эта сволочь не ест файлы с длинным путем (и у меня дома он перестал открывать этот формат, какая-то бесовщина, так что я возьму файлы .svg, полученные на работе путем обработки .eps);
- сперва экпорт .png, в ворде:
Снимок9.PNG
0.5 не поменял шрифт, жизнь – боль

в PDF/A:
Снимок10.PNG
не понимаю, почему этот и пятый рисунки с прокруткой (и масштаб 1:1), т.е. рисунки и больше, и меньше есть по размерам, но только эти такие
Снимок10.PNG (10.91 KiB) Viewed 828 times

вот те раз;
- .emf в PDF/A:
Снимок11.PNG
всё норм?

- тут я удивился, так как всё вышло нормально, но меня не обманешь, берем немного другой файл (также сохраненный сперва в .eps, а потом в .emf) в PDF/A:
Снимок12.PNG
ну слегка коцаный

- на самом деле было ещё хуже:
Снимок13.PNG
Снимок13.PNG (6.62 KiB) Viewed 828 times

- ну и проверяем в .wmf:
Снимок14.PNG

тут рисунок плавный, но смотрите на пунктирную линию, ага, её тут нет.

Итоги
Во-первых, я удивляюсь (это ещё мягко сказано) почему перестали открываться .eps, т.е. это полная ерунда, зато стали более-менее открываться .emf
Снимок15.PNG
вот пруф, что я с ними работал

Во-вторых, работа с векторной графикой в :labview: подразумевает необходимость стороннего ПО для "сделать красиво".
В-третьих, для сохранения в формат PDF/A вас может не спасти ничего, т.е. будет либо зашакалено, либо исправлено всё на линии (как .wmf).

Кто-то копал в этом направлении? Или подскажет, что я делаю не так?

P.S. Вот одно из применений Python'а в 2018 версии: создавать графики в :labview: , а сохранение в вектор делать через Python.
User avatar
alerm
leader
leader
 
Posts: 573
Joined: 02 May 2012, 21:28
Medals: 1
Activity (1)
LabVIEW Version: 13
Karma: 156
VIP teachers freelance

Re: Векторная графика

Postby dadreamer on 09 May 2018, 15:47

alerm wrote:Кто-то копал в этом направлении?

Я не копал, но я попробовал. :) На самом деле, при экспорте в emf появляются то тут, то там косяки (пробовал в LV 2018). На форумах NI много баг-репортов по поводу функции "Export Simplified Image", причем ни один баг не исправлен (видимо, маленький приоритет). Так что это на 90% глючная отрисовка движка :labview: . Вряд ли что-то с этим можно сделать, кроме как править "ручками".
alerm wrote:P.S. Вот одно из применений Python'а в 2018 версии: создавать графики в :labview: , а сохранение в вектор делать через Python.

Не всё так просто. И дело тут не в Питоне даже. Если в :labview: глючной конвертор в emf, то нужно его переписать или взять сторонний. Это не обязательно делать на Питоне, можно взять любую среду программирования или любую подходящую библиотеку. (Но я сходу подобной библиотеки не нашёл, хотя и не сказать, чтобы я тщательно искал.) Кроме собственно отсчётов (точек) нужно ещё отрисовывать оси, деления, подписи осей, легенду, толщину/тип линий, маркеры (опционально). Это в первом приближении. Точнее даже, не отрисовывать, а преобразовывать в векторные команды. Из растра эту инфу никак не вытянешь, да и конвертация "растр -> вектор" вряд ли устроит. В сухом остатке получаем, что нужна рисовалка с внешним API, с функцией экспорта в файл или хотя бы в поток.

Ну, и остальные возникающие траблы - это обычная неполная совместимость форматов. EMF/WMF - формат Microsoft, вроде бы уже устаревший. EPS, PDF - Adobe, второй уже открытый. Каждый софт по-своему работает с тем или иным форматом. Множество стандартов, неточная спецификация - вот основные причины.

List of information graphics software
Например, Veusz:
Veusz is a scientific plotting and graphing program with a graphical user interface, designed to produce publication-ready 2D plots. In addition it can be used as a module in Python for plotting. Veusz is multiplatform, running on Windows, Linux/Unix and macOS. It supports vector and bitmap output, including PDF, Postscript, SVG and EMF. Veusz is Free Software.
User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

Re: Векторная графика

Postby alerm on 10 May 2018, 13:05

Как я и говорил: на работе нормально открываются .eps, но по-идиотски .emf
Attachments
на работе.PNG
.emf
User avatar
alerm
leader
leader
 
Posts: 573
Joined: 02 May 2012, 21:28
Medals: 1
Activity (1)
LabVIEW Version: 13
Karma: 156
VIP teachers freelance

Re: Векторная графика

Postby dadreamer on 10 May 2018, 15:34

Так а конечная цель какая? Сделать PDF'ку с графиками? Если так, то в чём состоит затея экспорта в вектор, а потом в PDF? Для таких графиков не будет великих искажений, если их вставить в PDF в растре. Если только на больших форматах не собираетесь печатать. Я понимаю, если была бы речь о каких-то дизайнерских шрифтах или баннер делали бы метр на полтора. Графики для инженерной документации вполне можно ПринтСкрином скопипастить куда надо. Может, конечно, я чего-то не так понял... :dntknw:
User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

Re: Векторная графика

Postby alerm on 10 May 2018, 15:46

dadreamer, так Вы правы, но, как говорится, глаз зацепился.
User avatar
alerm
leader
leader
 
Posts: 573
Joined: 02 May 2012, 21:28
Medals: 1
Activity (1)
LabVIEW Version: 13
Karma: 156
VIP teachers freelance


Return to Сохранение данных

Who is online

Users browsing this forum: No registered users and 3 guests

cron