Как стать автором
Обновить

«Костыль» для китайского лазера

Open source *Работа с векторной графикой *DIY или Сделай сам Лайфхаки для гиков
Из песочницы
Здравствуйте.

Работаю я оператором лазерного маркера. Наношу изображения на металлические шильдики. В данной заметке хочу поделиться маленькой хитростью, как сейчас принято говорить — «лайфхаком».

Вводная


Начну несколько издалека. Приставлен я к небольшой технологической установке, твердотельному волоконному лазеру Unilaser, произведённому в КНР. Управляется станок специализированным ПО, EzCad2 [Unilaser]. Программа обеспечивает ряд возможностей для отрисовки картинок для нанесения, управление режимами реза. Однако, точно позиционировать текст в ней весьма затруднительно, поэтому используется дополнительный векторный редактор. В качестве такового до последнего времени выступал Corel Draw X8.

В целом, алгоритм маркировки шильдика выглядит примерно так:



Из схемы видно, что на этапе подготовки изображения к нанесению, используются и модифицируются ранее утверждённые шаблоны, либо изображение создаётся с нуля под определённые требования. В зависимости от количества и сложности изображений, при создании может использоваться непосредственно EzCad2, либо векторный редактор. В моём случае — Corel Draw X8. Также часта ситуация, когда некий шаблон создаётся в векторе, а текст подгоняется под шаблон и изменяется уже в EzCad2.

Особенность заключается в том, что EzCad2 понимает не так много векторных форматов. Если точнее, то следующие типы файлов:



До недавнего времени, преимущественным типом экспортируемого из векторного редактора файла у нас был принят *.svg.

Однако в сложных макетах, при импорте сформированного корелом svg в EzCad2, на выходе получалась маловразумительная каша. Или условно применимый, требующий серьёзной доводки файл. Чуть ниже покажу примеры.

На этом этапе я сделал попытку применить Inkscape, как редактор, наиболее полно использующий возможности формата svg. Однако EzCad2 абсолютно не хотел работать с SVG из Inkscape. На этом пробы прекратил, и продолжил работу в Corel. Также, опытным путём установил, что файлы DXF, экспортированные из Corel Draw, принимаются программой EzCad2 без проблем. Таким образом была минимизированна потребность в использовании SVG в рабочем процессе.

Всё благолепие вполне исправно функционировало до начала этой недели, когда Corel Draw при запуске настойчиво попросил позолотить ручку на $245.

Стал искать некий работающий способ продолжить работу, не теряя при этом файловый архив формата CDR v.18.

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

Решение


На этапе поиска быстрого и работающего способа открыть CDR, вернулся к Inkscape. Свежая версия вполне корректно открыла файлы макетов. Однако проблема неработоспособности файлов SVG из Inkscape никуда не делась. Также не работали полученные из Inkscape файлы DXF, PLT, PS, AI. EzCad2 все векторы скидывал в кучку. При тестовой конвертации SVG в PLT программа попросила установить Uniconverter. Осуществил данную операцию, однако на выходе получал файл-кашу и ворох ошибок.

В ходе ряда безуспешных экспериментов, Uniconverter был запущен отдельно, вне Inkscape. Натравил его на нужный файл. И неожиданно получил работающий в EzCad2 plt-файл!

Попробовал повторить. Получилось не сразу.

Тут необходимо отметить следующий момент:



Inkscape позволяет сохранять следующие типы файлов. Для наглядности зелёным выделил те форматы, которые якобы воспринимает EzCad2. Однако, как отметил выше, не все файлы открываются на самом деле. Из выделенных файлов единственный работающий вариант — «Оптимизированный SVG»

Проиллюстрирую вышесказанное.

Практика:


1) Запускаем Inkscape



2) Запускаем Uniconverter



3) в Inkscape открываем требуемый файл.



4) Обязательно (!) копируем предназначенный для экспорта фрагмент

5) создаём новый файл, вставляем содержимое буфера.



6) преобразуем в кривые



7) Сохраняем документ как «Оптимизированный SVG». Щёлкаем в диалоге сохранения на кнопки.





8) Открываем Uniconverter, в верхнем диалоге выбираем необходимый файл, в нижнем выбираем тип файла *.plt

Конвертируем.





9) заходим в EzCad2, импортируем векторный файл ( Ctrl+B ), выбираем получившийся файл PLT





Готовим макет под печать.

10) работаем дальше :-)



Для сравнения — то, что получатся при непосредственном экспорте того же SVG из Inkscape и импорта файла в EzCad2:





Вывод


Согласен, что «костыль». Согласен, что требует лишних телодвижений. Однако, работает!!!

Теперь бы это как то автоматизировать чуть чуть. Типа выделил фрагмент в инкскейп, оно всё «фигакс» — и посчитало. Но пока несколько не до этого.

Спасибо за внимание, надеюсь, было интересно и/или полезно.

UPDATE

Нарисовал несколько простых файлов SVG. Посохранял в разных форматах. Буду сравнивать что как.

sK1 RC3 не заработал, ругается на невозможность импортирования. Попробую ночник RC4.

UPDATE 2

Сравнил «Svg Inkscape» (на скриншотах слева) и «Оптимизированный SVG»





EzCad2 показывает следующее:
при импорте конвертированного UniConverter файла Inkscape SVG


при импорте конвертированного UniConverter файла Оптимизированный SVG


Будет время, посмотрю разницу в файлах PLT
Теги:
Хабы:
Всего голосов 32: ↑27 и ↓5 +22
Просмотры 18K
Комментарии 28
Комментарии Комментарии 28