Corel Draw: создание докера

Corel Draw: создание докера

Corel Draw: создание докера
18/3/2024
В этом разделе будет серия постов, как оптимизировать и автоматизировать работу в графических программах, чтобы избежать ошибок связанных с человеческим фактором. Это, особенно, важно для допечатников, готовящих макет в печать. Начнем с создания докера, где будут собраны вызовы скриптов для работы.
Инструкция по созданию докера присутствует на сайте сообщества Corel Draw. Вот ссылка, а я изложу ее на русском )).
В чем смысл данного докера. Используя html, javascript и css, можно настроить удобный для себя интерфейс для вызова макросов из VBA CorelDraw. Javascript немного убогий, но для интерфейса его хватит.
Во-первых, надо загрузить шаблон вашего будущего докера. Находится он по ссылке ниже.
Этот архив нужно разархивировать в месторасположение будущего докера. Для этого надо найти папку, куда установлен CorelDraw. Для 64-разрядной винды это будет скорее всего C:\Program Files\Corel\CorelDRAW Graphics <тут ваша версия>\Programs64\Addons. Для 32-разрядной винды Programs64 меняется на Programs.
В папке Addons создаете новую папку и называете ее (по-английски обязательно) именем Вашего Короля Докера. В данной статье использую имя: myScripts. Копируете туда все файлы из архива и переименовываете. Вот что у вас должно получится:
Теперь нам нужны идентификаторы, чтобы Corel Draw знал, где что лежит и как связано все это вместе. Для этого переходим на сайт www.guidgenerator.com и генерируем 3 GUIDs.
Можете скопировать их куда-нибудь, а можете просто не закрывать вкладку, и копировать их по очереди. Действия помечены красным.
Теперь нам необходимо вставить эти значения в файлы AppUI.xslt and UserDraw.xslt. Начнем с AppUI.xslt. Открываем его в текстовом редакторе.
Берем первый GUID (смотри за зеленой стрелкой) и копируем. Теперь надо заменить все вхождения <<GUID A>> на этот номер. В файле это будет одна замена после строчки: <!-- Define the button which shows the docker -->. Удаляете из кавычек <<GUID A>> и вставляете внутрь кавычек номер .
Теперь копируем второй GUID (смотри за голубой стрелкой). Заменить нужно <<GUID B>>, также внутрь кавычек вставляем номер. Замен будет две.
Копируем третий GUID (смотри за темно-синей стрелкой). Заменить нужно <<GUID C>>, также внутрь кавычек вставляем номер. Замен будет одна.
Но не закрываем файл AppUI.xslt ! Нам сюда надо вставить имя нашего докера. Находите <<TemplateWebDocker>> и заменяете на myScripts (или какое имя вы ему придумали). Замен будет 6!
Обратите внимание, что в одной из строк (43-я) будет такой фрагмент кода dynamicCommand="myScripts.Macros.ShowmyScripts" вместо такого dynamicCommand="<<TemplateWebDocker>>.Macros.Show<<TemplateWebDocker>>". Никаких пробелов между словом Show и название вашего докера не должно быть.
Сохраняем AppUI.xslt. Открываем в текстовом редакторе UserDraw.xslt. Здесь такой же принцип замен GUID.
<<GUID A>> будет одна замена на первый GUID (смотри за зеленой стрелкой).
<<GUID B>> не будет замен.
<<GUID C>> будет одна замена на третий GUID (смотри за темно-синей стрелкой).
<<TemplateWebDocker>> не будет замен.
Сохраняем файл UserDraw.xslt.
Для распознования, что данный докер сделан для Corel Draw, а не для Corel PhotoPaint в папку докера необходимо поместить пустой файл Coreldrw.addon. Если возникла проблема с создание файла, то вот можете его скачать:
Не бойтесь, это просто пустой файл. Потому как, если вы решили создать текстовый документ, а потом его переименовать, то у вас может получится: Coreldrw.addon.txt, а не то что надо.
Теперь нам надо запустить программу Corel Draw. Либо закрыть ее и открыть заново. Убедимся, что все сделали верно откроем редактор скриптов.
у меня англоязычный Corel Draw, но думаю, визуально понятно где это. Или нажмите Alt+F11
Если все хорошо, то увидите наш докер в списке слева:
На следующем этапе могут возникнуть проблемы, связанные с правами доступа к системной папке C:\Program Files\Corel\CorelDRAW Graphics <тут ваша версия>\Programs64\Addons. Я рассмотрю ниже, как решить эту проблему, если у вас не будет проблем с записью, то вы полный админ )).
Переименуем и проверим работоспособность. Для этого откроем Macros в нашем докере и отредактируем его. В Macros присутсует одна процедура:
Sub Show<<TemplateWebDocker>>()
    Application.FrameWork.ShowDocker "<<GUID C>>"
End Sub
Где надо заменить <<TemplateWebDocker>> на название нашего докера myScripts.
<<GUID C>> заменить на на третий GUID (смотри за темно-синей стрелкой). И тут бабах!!
Не получается переименовать или редактировать данный файл. Вот о чем я говорил ниже. Сейчас рассмотрим, как это решить. Если у вас нет проблем, то скролльте до последнего этапа.
Закрываем Corel Draw и открываем проводник. Переходим на диск C: в папку где лежит наш докер: C:\Program Files\Corel\CorelDRAW Graphics <тут ваша версия>\Programs64\Addons.
Правой кнопкой мышки щелкаем по папке нашего докера и выбираем в контекстном меню свойства. На вкладке Безопасность нажимаете кнопку изменить
Выбираем всех пользователей, нажимаем галку Полный доступ и Применить.
Можете тоже самое сделать и для пользователя, под которым вы заходите на компьютер. Либо найти Все и им сделать Полный доступ.
Если это ваш компьютер на работе, то здесь надо добавить вашего пользователя домена, можете попросить сисадмина, либо спросите в комментарии, подскажу.
И да, не забудьте снять атрибут для чтения с папки, если он стоит. Это все в свойствах папки.
Если ошибка записи будет появляться, то вам каждый раз надо закрывать Corel, так как он реагирует только один раз на запись и потом не следит за изменением прав у папки. Поэтому перезапускайте Corel каждый раз.

Последний этап

Итак, мы переименовали процедуру в соответствие с нашим докером и вставили <<GUID C>>.
Sub ShowmyScripts()
Application.FrameWork.ShowDocker "b3b7116e-5ad3-4d0d-9eb4-895c4d3b575d"
End Sub
Теперь можно запустить докер прям отсюда. Щелкните мышью внутри процедуры и нажмите F5. Перейдите из редактора скриптов в главное окно программы, где и увидите свой докер.
В следующем посте будет объяснено, как редактировать докер и как он связан с макросами в VBA.
Комментарии: