Categories:

корел

"Если бы строители строили здания так же, как программисты пишут
программы, первый залетевший дятел разрушил бы цивилизацию
" ("компьютерный" анекдот прошлого века).

Для лазерного выжигания-вырезания по фанерке у меня активно используется Corel Draw. В качестве "промежуточного формата" для переноса вектора между корелом и выжигальным станочком используется формат HPGL (Hewlett-Packard Graphics Language), он же PLT - от слова "plotter", потому что использовался хьюлеттовскими плоттерами. Хорош он в частности тем, что чтобы его читать-писать, по минимуму достаточно знать всего две команды: поднять-переместить перо (PU, pen up) и опустить-переместить перо (PD, pen down). Ну, я до недавнего времени только эти две команды и использовал, а "вырезаемое" и "выжигаемое" разделял вручную, выбирая мышкой перед экспортом. Но когда на листе разложено много мелких изделий, мышкой можно увыбираться, поэтому я решил освоить разделение по цвету - это и в кореле удобно, сразу видно что режем а что жжём, и в HPGL поддерживается (команда SP, select pen). А в диалоге экспорта есть даже табличка дефолтного соответствия цвета и номера пера: 1 - черный, 2 - синий, 3 - красный, 4 - зеленый, 5 - пурпурный, ну и так далее.
Поскольку с печатью на бумаге я дела не имею, а работаю только на мониторе, цвета я использую RGB, они и поярче будут чем CMYK. Нарисовал я для проверки несколько линий разными RGB цветами, вывел в PLT, и с удивлением убедился, что RGB чёрный вывелся не первым пером, а пятым, им же выводился RGB пурпурный, с остальными цветами неожиданностей не было. Я прифигел, и начал экспериментировать (вариант "плюнуть и не использовать пурпурный" был нежелателен: мне нужно было минимум четыре разных пера, зеленый был слишком светлым и потому неудобным, а после пурпурного в табличке начиналась вообще малоконтрастная муть вроде жёлтого). Экспериментально я быстро выяснил, что CMYK чёрный выводится правильно, первым пером... но я привык к тому что цвета у меня в RGB, во всех файлах чёрный - именно RGB чёрный, и в конце концов - компьютер для человека, или человек для компьютера?! Значит, надо настроить! И я нажал кнопку настройки перьев, создал перо цвета "RGB чёрный", и назначил его первым пером. Нажал "сохранить"... и корел исчез с экрана.

Собственно, вот. Следующие пару часов я разбирался с тем, как вернуть всё взад: корел нормально запускался и работал, но при вызове экспорта в PLT - мгновенно исчезал. Настройки экспорта в PLT были в окне экспорта в PLT, и более нигде в интерфейсе их найти не удалось (что логично, это один из нескольких десятков фильтров со своими личными настройками, вытаскивать их в глобальные нет смысла), а окно экспорта в PLT не успевало даже появиться, корел просто падал.
Найти удалось нескоро: ни в реестре, ни на диске никаких "инишников с говорящим именем" не нашлось, настройки нашлись только полным поиском буквосочетаний типа "HPGL" внутри файлов по всем каталогам, связанным с корелом, в каком-то глобальном файле настроек в профиле пользователя. Я вычистил оттуда пару строчек, описывающих новое перо и его назначение, корел ожил. Заодно понял, что цвета перьев в этом фильтре похоже принципиально задавались в CMYK, поэтому при попытке задать перо RGB цвета, перо-то создалось, а вот вместо цвета у него была прописана пустота. Поэтому видимо и падало.

Пришлось смириться и принять то, что если я хочу удобства и автоматического разделения по цветам, придётся следить чтобы чёрный везде был CMYK. Ну, и что с точки зрения корела RGB чёрный оказался ближе к пурпурному чем к CMYK чёрному. Заодно в процессе поиска нашел собственно бинарник фильтра HPGL, и убедился что в версиях корела 2020 и 2021 годов бинарники различаются, то есть фильтр не "покинут и заброшен", какая-то жизнь там идёт (хотя, возможно, его просто пересобрали более новым компилятором).



Ну и по мелочи.
Если взять в кореле какую-нибудь векторную кривулину, нажать "преобразовать в битмап", а затем сделать ctrl/C, в буфере обмена окажется растр с тем разрешением, которое мы задали при конвертации. Если же при этом стояла галка "прозрачный фон" (включена по умолчанию!) - в буфер попадёт картинка с разрешением что-то около 75 dpi - качество примерно факса, если кто застал факсы, то есть недостаточно для большинства применений. Вот казалось бы, какая разница - ан нет.
И так у них многое - вот слои например. Казалось бы - удобная концепция, в фотошопе активно использую... но в кореле объекты путешествуют по слоям сами, по непонятным мне правилам, слоёв даже на несложном рисунке становится какое-то нечеловеческое количество, а из внешних проявлений - только эпизодический отказ корела поставить один объект впереди/позади другого, или вот - преобразовать в битмап, "потому что объект находится на каком-то не таком слое". Что интересно, если объект лежит за пределами страницы _и_ корел отказывается преобразовывать его в битмап (так происходит не всегда, но достаточно часто) - оказывается достаточно сдвинуть объект так, чтобы он хотя бы краем коснулся страницы, и тут же окажется что всё можно, никаких проблем. Хотя казалось бы, какая разница.