[CDR 2017-2021] как програмно отловить ошибку 91 - при создании контура

  • Автор темы Автор темы Nezar
  • Дата начала Дата начала

Nezar

Участник
Топикстартер
Сообщения
158
Реакции
3
иногда, если шейп очень маленький, и я пытаюсь сделать внутренний контур - выскакивает ошибка 91.
причина ясна - контур не помещается внутри шейпа.
как можно отловить эту ошибку - и ели возникает именно она - выполнить определенные действия?

Set eff1 = s.CreateContour(0, rfrezPopolam - 0.01, 1, , , CreateCMYKColor(0, 100, 0, 0), , 0, 0, 1, 2)
ActiveDocument.CreateSelection s, s.Effects.ContourEffect.Contour.ContourGroup ----------- тут ошибка

Спасибо
 
сделал через On Error GoTo
но все равно както коряво получилось, но вроде работает
ErrorHandler:

Select Case Err.Number
Case 91
s.Delete
Case Else
End Select
Resume Next
 
Вцелом подход правильный, но вы уверенны, что ошибка будет обязательно 91? Попробуйте внутренний контур делать не через контур (каломбур!) а через обводку
 
если контур маленький - то 91, пока другая не попадалась.
обводка не подходит, т.к. я мотом с контуром как с шейпом работаю.
 
Но ведь есть же еще, как это грустно звучит, метод Outline.ConvertToObject
супер. даже не знал.
но все равно не особо подгодит, т.к. естественно получается шейп с дыркой. в принципе можно потом объединять с исходным.
надо пробовать.
Спасибо за метод!