26/4/2025
При допечатной подготовке часто требуются специальные spot-цвета. Обычно это белила, лаки, теснение, конгрев. Создание данных спот-цветов помогает другому человеку разобраться, что задумал дизайнер. В Corel Draw очень неудобное и несущее неочевидные проблемы создание спотов. Рассмотрим, как облегчить эту задачу.
Обычно дизайнер не заморачивается с созданием спотов, а выбирает близкий по цвету пантон и потом подписывает, что он имел ввиду.
В Иллюстраторе более удобное создание спотов, а в Кореле ваш созданный спот может определяться, как цвет, на основе которого он создан.
херобора какая-то
В данном посте я рассмотрю два решения данной проблемы: быстрое и через макрос.
Быстрое
Ну здесь все просто, скачиваете мой макрос, где на вкладке «Действия» есть пункт создания спота.
1 — вводишь название спота. Только english буквы, цифры, - и _.
2 — нажимаешь кнопку для выбора оттенка спота.
Ну и кнопка «+» — добавить.
Нажимаем "run" и... теперь у вас есть свой «безпроблемный» спот в текущем документе.
Можно сохранить набор с нужными спотами и добавлять их потом в нужные документы. Как это сделать: смотри здесь.
Через макрос
Ниже предлагается код для создания макроса на VBA. Код представлен в виде функции, куда в качестве параметров передается имя и массив оттенков в CMYK.
В качестве шаблона выбрана строка конвертации спота в строку, где будут заменены нужные элементы. В коде происходит поиск последнего индекса среди спотов, чтобы присвоить нашему спот-пантону следующий.
Function shablonColor(namer, arrCMYK, palit)
Dim doc As Document, pal As Palette, col As Color, blueBoard, colBB As Color, colRasm As Color, tmpCol As Color
shablon = "SPOT,USER,1,100,palitr,~,werty,1,CMYK255,USER,0,0,0,255,100,00000000-0000-0000-0000-000000000000,~,palitr,werty"
arrSh = Split(shablon, ",")
maxid = 0
Set pal = palit
Set clrs = pal.Colors
For Each col In clrs
If col.Type = cdrColorSpot Then
If col.SpotColorID > maxid Then maxid = col.SpotColorID
End If
Next
Set tmpCol = New Color
arrSh(2) = maxid + 1 ' index
arrSh(3) = 100 'tint
arrSh(4) = pal.Identifier ' identificator of Palette
arrSh(17) = pal.Identifier ' identificator of Palette
arrSh(6) = namer ' name
arrSh(18) = namer ' name
arrSh(10) = CLng(CDbl(arrCMYK(0)) / 0.392)
arrSh(11) = CLng(CDbl(arrCMYK(1)) / 0.392)
arrSh(12) = CLng(CDbl(arrCMYK(2)) / 0.392)
arrSh(13) = CLng(CDbl(arrCMYK(3)) / 0.392)
'arrSh(14) = 0
tr = Join(arrSh, ",")
tmpCol.StringAssign tr
pal.InsertColor maxid + 1, tmpCol
pal.Save
Set shablonColor = tmpCol
End FunctionЭто функция, а запускать можно через команду
call shablonColor("mypantone", Array(100, 0, 100, 0), ActiveDocument.Palette)
Появится зелененький пантон.
Если кто заметил, Корел хранит CMYK в оттенках 255, поэтому пришлось их конвертировать.
Комментарии:





