[CDR X5-X8] Publish to PDF

  • Огонь
Реакции: kuterma2
не-не ... слесарю - слесарево

на праздниках покумекаем ...
Благодарствую!
ну и может не строго "в печать", а чтобы менять можно было название папки... а то это мне надо в печать - а кому-то "Готов", "Финал" или вообще "дата_время" и т.п.
 
а то это мне надо в печать - а кому-то "Готов", "Финал" или вообще "дата_время" и т.п.
разумеется ... дата и время в названии файла уже можно добавлять ...
ну а "Готов" "Финал" ... хоть "В морг" - будет на усмотрение пользователя
 
  • Огонь
Реакции: kuterma2
а то это мне надо в печать - а кому-то "Готов", "Финал" или вообще "дата_время" и т.п.
ну с этим всё готово

1746455568523.png


но чтобы два раза не разуваться - начал копать в сторону
в вашем макросе при сохранении Pdf - цветовые профили встраиваются?
по дороге выяснилось засада с профилями не единственная
похожая ситуация и конвертированием спотов - т.е. по умолчанию они не конвертируются.
И если в макете есть споты и нам захотелось изготовить Gray - то картинка выходит довольно весёлая
и отключить это на лету нельзя, как и в ситуации с профилями.
С RGB и CMYK картина аналогичная - по дефолту - профили включены, а конвертация спотов наоборот выключена.

1746456229015.png

Пока остановился на том, что из макроса читается состояние
c:\Users\***\AppData\Roaming\Corel\CorelDRAW Graphics Suite 2018\Config\corelpdf.ini
и выводятся флаги по спотам и профилям All_ON или All_OFF или mix
и сделан механизм переключения/сброса для всех пресетов
... но требуется перезагрузка CorelDRAW, чтобы эти изменения вступили в силу

1746456109861.png


Иначе из макроса никак.
Альтернатива - пользоваться штатными PDF Preset.
Идеально было бы как-то так '))'

1746457069505.png


но одна мысль тревожит ... а может таки не стоит лезть в это corelPDF.ini???

Пусть остаётся со спотами и профилями - дело-то совсем не пустяшное.
По дури или непониманию можно столько дров наломать.
'hmmm''opa!)''hmmm''hmmm'
 
  • Огонь
Реакции: kuterma2
Ох, ёшкин кот... куды всё завертелось!!! Красиво!
я даже не знаю что сказать... Лично мне профиля наверное не нужны, но то такое: кому как. Поэтому копья ломать не стану.
 
Лично мне профиля наверное не нужны
наверное ещё помучаю, но скорее всего ничего такого не будет ...
добавятся субдиректории с возможностью запоминать/добавлять/удалять и на этом остановимся
всё остальное - Добро пожаловать в пресеты.
 
  • Спасибо
Реакции: kuterma2
наверное ещё помучаю, но скорее всего ничего такого не будет ...
добавятся субдиректории с возможностью запоминать/добавлять/удалять и на этом остановимся
всё остальное - Добро пожаловать в пресеты.
Отлично, но, на мой взгляд, нужно чтобы монструозным не стало, важно вовремя остановиться
 
... небольшой повтор уже сказанного
Установки на внедрение цветового профиля в PDF хранятся в файле
c:\Users\***\AppData\Roaming\Corel\CorelDRAW Graphics Suite ***\Config\corelpdf.ini
для каждого пресета в строках
EmbedColorProfile=1
Можно менять и настраивать пресеты на лету, НО
засада в том, что corelpdf.ini читается один раз при запуске приложения
и для применения скорректированных значений встраивания профилей надобно перезапустить CorelDRAW, чтобы заново считать corelpdf.ini
Соответственно, код VBA, касающийся встраивания цветовых профилей не имеет никакого значения
Что при запуске прочиталось - то и будет использовано.
то же самое касается и конвертации Spot to ...
Spot to ... пока оставим в покое . Но вот насчёт перезапуска и ColorProfile кое-что придумал.
Структура corelpdf.ini следующая
1746975141667.png
1746975228454.png

в каждом стиле записаны установки для штатных пресетов + 17 Current
на последних версиях к ним добавляется ещё секция с ID_86 - PDF/X-4

1. Запускаем CorelDRAW и создаём и сохраняем PDF Preset с именем 2025
(можно и иначе - но тогда нужно будет внести правки в скрипт - о нём ниже) - он так и будет
отображаться в списке пресетов.
1746975765719.png

Задайте в нём параметры ON/OFF внедрения ColorProfile ... ну и всё остальное
Примените это пресет один раз на каком-нибудь файле
теперь верхняя секция corelpdf.ini [Config] будет выглядеть следующим образом

[Config]
Style=2025
ProofStyle=CorelDefaultID_20
ExportRange=0
PageBoundingBox=0
Pathname=C:\Temp\16\
[StyleCorelDefaultID_35]
...
т.е. теперь если запустить CorelDRAW - VBA будет использовать стиль 2025 по умолчанию до тех пор, пока не будет закрыт.
При этом можно использовать и все остальные пресеты, причём всякий раз при смене пресетов будет перезаписывать секция [Config]
Тем, кто использует исключительно пресеты для Publish to PDF, не о чем беспокоиться - всё будет работать как обычно .
Тем, кто использует макрос важно, чтобы секция [Config] содержала стиль 2025 и его настройки ON/OFF внедрения ColorProfile.
Поэтому ВМЕСТО старта CorelDRAW предлагаю запускать vbs скрипт, который

открывает corelpdf.ini
правит секцию [Config],
сохраняет corelpdf.ini
и потом сам запускает CorelDRAW.

Ещё раз обращаю внимание - В теле скрипта (а это обычный текстовый файл в кодировке UTF-8) задано
имя стиля "2025" - если вы зададите другое имя - скрипт надо будет поправить
в 22 строке strLineInput = "Style=2025" на ваше имя
а также путь к версии CorelDRAW - сейчас там 2018
FileIn = appDataLoc & "\Corel\CorelDRAW Graphics Suite 2018\Config\corelpdf.ini"
CorelApp = "c:\Program Files\Corel\CorelDRAW Graphics Suite 2018\Programs64\CorelDRW.exe"

******
НА ВСЯКИЙ СЛУЧАЙ - ПРЕДВАРИТЕЛЬНО ЗАБЭКАПИТЬ corelpdf.ini
если вам всё-таки удастся его попортить - прикладываю девственный (с PDF/X-4)
*****

1746978848759.png
 

Вложения

Последнее редактирование:
заменил (изменил) скрипт ... теперь его можно запускать из любого места (например с DeskTop) - и от имени администратора.
Жаль не позволяет закрепить на панель задач.
 
Последнее редактирование:
... что-то после ремонта прикреплённые файлы меняются ... или я чего не доглядел

Еще раз текстом/кодом - скопировать и сохранить в кодировке 1251
при необходимости поправить версию CorelDRAW в обоих файлах

Код:
сохранить строку как 2025.cmd  и запускать откуда угодно от имени админа для правки INI и старта CorelDRAW

***
start "" "c:\Users\W10\AppData\Roaming\Corel\CorelDRAW Graphics Suite 2018\Config\2025.vbs"
***

а это сам скрипт 2025.vbs  сохранить по этому пути
c:\Users\W10\AppData\Roaming\Corel\CorelDRAW Graphics Suite 2018\Config\2025.vbs

***
Set objShell = CreateObject( "WScript.Shell" )
appDataLoc=objShell.ExpandEnvironmentStrings("%APPDATA%")

FileIn = appDataLoc & "\Corel\CorelDRAW Graphics Suite 2018\Config\corelpdf.ini"
CorelApp = "c:\Program Files\Corel\CorelDRAW Graphics Suite 2018\Programs64\CorelDRW.exe"

Set objFSO = CreateObject("Scripting.FileSystemObject")
 
Set PDFstyle = objFSO.OpenTextFile(FileIn, 1, True)
 
Set tmpFile = objFSO.OpenTextFile(FileIn & ".tmp", 2, True)
 
Do While Not PDFstyle.AtEndofStream
 
strLineInput = PDFstyle.ReadLine
 
If InStr(strLineInput, "Style=") Then
    S = Mid(strLineInput,1,6)
    If  S = "Style=" Then
        strLineInput = "Style=2025"
    End If
 
End If
 
tmpFile.WriteLine strLineInput
 
Loop
 
PDFstyle.Close
 
tmpFile.Close
 
objFSO.DeleteFile(FileIn)

 objFSO.MoveFile FileIn&".tmp", FileIn

objShell.Exec(CorelApp)
Set objShell = Nothing
***
 
Последнее редактирование:
В тестировании версия 7

1748342735566.png
1748342781284.png
 
  • Спасибо
Реакции: kuterma2
Навороченный, конечно, макрос. Куча настроек, все англоязычные...

Помнится, писал похожий макрос для себя. Не люблю много настроек, больше нравится когда макрос сам понимает, чего от него хотят. Ничего не выделено - экспортируем всю страницу, иначе - экспортируем выбранное. Выбранное состоит из нескольких непересекающихся объектов - экспортируем в разные файлы, иначе - одним файлом. Выбрал объекты, вызвал макрос - получил готовые файлы в заранее указанной папке с мессиджбоксом, что столько-то файлов экспортировано. Нужны дополнительные настройки - тогда вызываем этот же макрос, например, с нажатым шифтом или альтом и в появившемся окне уже выставляем что нужно. Хотя, конечно, у всех программистов свои предпочтения. '%)'
 
Версия 7+

Отображение информации в блоке [ Color + Spot ] о PDF Preset загруженного при старте CorelDRAW
и некоторых его параметрах - в частности - внедрении профилей и конвертации Spot
Именно на этот PDF Preset распространяются команды VBA макроса.
VBA не умеет на лету переключаться между PDF Preset.
Этим занимается штатный диалог Publish to PDF.
Макрос при старте приложения читает его corelpdf.ini и может вносить в него изменения.

1749363365400.png
1749363392018.png


по кнопке "Edit" - переход на вторую страницу с настройками горячих папок и корректировки PDF Preset. Возрат по кнопке "Back"

1749363573454.png
1749363609302.png


1749364176955.png


Можно
- определить какие PDf Preset будут отображаться для изменения - все или только пользовательские.
Отображение и правка ВСЕХ - исключительно под вашу ответственность.
Настоятельно рекомендую создать свои PDF Preset на основе штатных для своих задач и издеваться над только над ними, а PDF/X-1a пусть им и остаётся

- выбрать один из PDF Preset и поправить его настройки в части внедрения профилей и конвертации Spot
- просто сохранить PDF Preset или сохранить настройки и назначить скорректированный PDF Preset, как загружаемый по умолчанию

Это то, что касается изменений в интефейсе.
 
  • Спасибо
Реакции: Slx1
Теперь кое-что о скрипте для запуска CorelDRAW именно с вашим PDF Preset
ведь именно его вы предварительно создали и любовно настроили '))'
Например основное его отличие от всех прочих - цветовой профиль не внедряется - так ваш HP LATEX печатает сочнее

Скрипт должен располагаться НЕПРЕМЕННО в папке ЗАГРУЗКИ (Downloads)\Corel - текущего пользователя
Например c:\Users\***\Downloads\Corel\2025.vbs на Вин 7-11
Или C:\Documents and Settings\***\Downloads\Corel\Х5.vbs на Вин ХР

Скрипт должен иметь имя в соответствии с версией СorelDRAW -
- если версия Х5 - то Х5.vbs
- если версия 2017 - то 2017.vbs
- если у вас несколько версий под рукой, то сделайте несколько копий с разными именами
Это важно - имя скрипта используется для запуска CorelDRAW именно этой версии

Как это работает:
- в коде скрипта записана информация о имени загружаемого по умолчанию PDF Preset
эту информацию пишет в него макрос - когда вы сохраняете изменения в PDF Preset
Но вы может в течение дня забыть или воспользовать штатным диалогом Publish to PDF с другими пресетами - а это переписывает строку Style= в файле corelpdf.ini

Запуск CorelDRAW через скрипт гарантирует использование именно вашего PDF Preset
Но обращаю ваше внимание - запуск через скрипт НЕОБЯЗАТЕЛЕН для работы макроса - макрос проверяет наличие скрипта - нет скрипта - нет и записи в него - только запись в corelpdf.ini

Теперь о том, как вытащить кнопки на этот скрипт

Вариант панель TotalCommader - у кого есть '))'
1749368573620.png


Вариант - панель задач

1749368665092.png
1749368811896.png


1749368919683.png


Ну или просто ярлыки на рабочий стол - кому как будет удобнее

В архиве сам скрипт - с паролем 2025

***
Предполагается что CorelDRAW установлен на диск С ... если это не так, то со строками типа
"c:\Program Files (x86)\Corel\CorelDRAW Graphics Suite
вам придётся разбираться 'opa!)'
 

Вложения

Последнее редактирование:
Как скрипт, так и макрос будет работать

в версиях CorelDRAW от Х5 до 2025 (х86 и х64)
установленных на OS Win ХР - Win 10 (х86 и х64)

- на Win 11 тоже не должно быть проблем, но я не проверял

В зависимости от PDF Preset
- а точнее, во что будут конвертироваться Spot цвета при выборе другого нежели "Spot to Spot" значения
- макрос меняет информацию в блоке [Color + Spot]

Теперь сам макрос
- собран на WinXP из CorelDRAW X5 (x86) и будет работать
в версиях CorelDRAW от Х5 до 2025 (х86 и х64)
установленных на OS Win ХР - Win 10 (х86 и х64)
на Win 11 тоже не должно быть проблем, но я не проверял

Распаковать для каждой версии в свой каталог UserGMS - а не в Programm Files\Corel\ чего-то там!
для Win7-11
c:\Users\***\AppData\Roaming\Corel\CorelDRAW Graphics Suite ****\Draw\GMS\ExPDF_7_X5-2025.gms
или
для Win XP
C:\Documents and Settings\***\Application Data\Corel\CorelDRAW Graphics Suite **\Draw\GMS\ExPDF_7_X5-2025.gms

пароль 2025
 

Вложения

Последнее редактирование:
... и да - совсем забыл - у кого возникнут сомнения - вот вам "крыса" для опытов
CMYK - RGB - Spot - GrayScale - Pattern - Text - в одном флаконе в 15 версии
1749372276180.png
 

Вложения