Как правильно подойти к вопросу: vBA как создать контур?
Ссылка скопирована
Нужно понять: в vba из CorelDraw 2018 есть функция createContour, которая создаёт контур объекта, но проблема в том, что при создании внутреннего контура (например 5 мм) в объекте (например 5,1), он создаёт внешние контур с 5мм. Как сказать, чтобы создавать в любом случае?
Нужно решить такую задачу?
Заказать помощь
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Лучший ответ
1
Другие ответы (0)
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопроскомментарий
Вам также может быть интересно
VPN
Как правильно настроить vless для Android TV?
1 ответ
Pyrogram
Как правильно зарегистрировать юзер бота в Telegram?
1 ответ
печатные-платы
Как заставить запускаться программу M3.exe от компании Hanxing AOI в инспекционной машине на Windows 7 Pro?
1 ответ
Telegram
Как диагностировать ошибку с подключением к прокси в мобильном приложении Telegram?
1 ответ

В CorelDRAW через VBA “создать контур” можно понимать по-разному: обводку объекта, дубликат по внешнему краю, эффект Contour или преобразование в кривые. Поэтому сначала нужно определить, нужен ли визуальный эффект контура или новый отдельный объект, который можно дальше резать/экспортировать.
Если нужна обычная обводка, задаётся outline у shape:
ActiveShape.Outline.Width = 1 ActiveShape.Outline.Color.RGBAssign 0, 0, 0
Если нужен именно эффект Contour, в CorelDRAW VBA используются методы объекта для создания эффекта контура. Названия и параметры зависят от версии CorelDRAW, поэтому проще записать макрос через Macro Recorder: вручную применить Contour к объекту, остановить запись и посмотреть сгенерированный VBA. Это самый быстрый способ получить корректный синтаксис именно для вашей версии.
Общий алгоритм такой:
Важно: contour для текста, bitmap и сложных групп может вести себя по-разному. Для стабильности часто сначала делают
ConvertToCurvesи работают уже с кривыми. Но это необратимо, поэтому макрос лучше запускать на копии объекта.Если задача технологическая — например, сделать линию реза вокруг макета, — не оставляйте просто визуальный эффект. Создайте отдельный векторный объект, задайте ему hairline/spot color и проверьте экспорт в PDF/CDR.
Итог: для простой линии используйте Outline, для внешнего объекта — эффект Contour с последующим разделением. Запишите действие Macro Recorder в вашей версии CorelDRAW — это даст точный VBA-код без угадывания устаревших методов.