Помогите с макросом MiterLimit под ХЗ

  • Автор темы Автор темы Henyk
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Henyk

Участник
Топикстартер
Сообщения
166
Реакции
95
Собственно есть некий код
------------------------------------------------
Sub MiterLimit()
Dim s As Shape
Dim gr As Integer

gr = Val(InputBox("Miter Limit=", "MiterLimit"))

For Each s In ActivePage.Shapes
If s.Outline.MiterLimit < 6 Then
s.Outline.MiterLimit = gr
End If
Next s
End Sub
------------------------------------------------
для установки желаемого параметра обводки на весь документ.

Всё бы хорошо, но он почему-то присваивает дефолтную обводку объектам которые раньше были без обводки.

Посему два вопроса:
1. Как это обойти?
2. Как правильно организовать код в виде отдельного макроса а не процедурой как сейчас?

Заранее всем благодарен
 
Ответ: Помогите с макросом под ХЗ

Это вроде мой код..
Он требует полной переработки. Это просто пример. Поправить его легко, да только времени у меня нет.

Можно попробовать так:

Код:
Sub MiterLimit()
Dim s As Shape
Dim gr As Integer

gr = Val(InputBox("введите значение Miter Limit", "MiterLimit"))

For Each s In ActivePage.Shapes
    If Not s.Outline.Type = cdrNoOutline Then
        If s.Outline.MiterLimit <> gr Then
            s.Outline.MiterLimit = gr
        End If
    End If
Next s
End Sub

И вообще тут вариантов целая куча может быть.
В виде отдельного макроса нужно через создание текстового файла, переименования его, и внесения кода.
 
Ответ: Помогите с макросом под ХЗ

Спасибо!
Только ещё вопрос: как бы научить эту штуку работать ещё и внутри поверклипов?
 
Ответ: Помогите с макросом под ХЗ

Henyk, попроси Asmussen-а.
Он писал макрос по кривлению текста и ещё всякое прочее. Там есть и изменение митер-лимита.
Только его макрос на тексте митер лимит не правил.
 
Ответ: Помогите с макросом под ХЗ

А вообще было бы хорошо автоматом, при открытии файла предыдущих версий, такую операцию выполнять.
 
Ответ: Помогите с макросом под ХЗ

Henyk сказал(а):
Спасибо!
Только ещё вопрос: как бы научить эту штуку работать ещё и внутри поверклипов?

Здесь не только в пауэрклипах, здесь нужно создать продуманный макрос с интерфейсом и настройками. Нужно чтоб он работал выборочно со слоями, страницами, мастерами, десктопами, с выделениями, входил в группы не разрушая их и т.п. С возможностью анализировать и выводить инфу. Короче говоря для меня создание такого макроса займет как минимум два дня. Для кого-то это вопрос двух часов.
 
Ответ: Помогите с макросом MiterLimit под ХЗ

Мой макрос, с краткой инструкцией. Работает в CorelDRAW 12 и X3
http://ivan.hoha.ru/ctc/
(хостинг бесплатный, иногда лежит)

Там много функций всяких, в том числе изменение Miter Limit.
Работает в режиме постраничного просмотра документа, начиная с активной страницы. Master Page не проверяется. Поверклипы поддерживаются.
Буду рад, если кому-то пригодится.
 
Ответ: Помогите с макросом MiterLimit под ХЗ

Asmussen, а прозрачные битмапы он так и не ищет? В настройках неактивно.
 
Ответ: Помогите с макросом MiterLimit под ХЗ

knower сказал(а):
Asmussen, а прозрачные битмапы он так и не ищет? В настройках неактивно.
Нет, уже забыл про это дело, мелкие исправления в основном вносил. Я с другим макросом возился в последнее время.
А так пролемм с этим нет, добавлю сегодня-завтра.
 
Ответ: Помогите с макросом под ХЗ

knower сказал(а):
А вообще было бы хорошо автоматом, при открытии файла предыдущих версий, такую операцию выполнять.
А вот это мысль!
Думаю надо состряпать код, чтоб без лишних вопросов, во всех страницах документа менял Miter Limit на некоторое значение, хранящееся в настройках.
Тогда останется попросить wOxxOm'а, что бы он втавил его на исполнение в свою прогу, после открытия файлов не 13-й версии в X3. Все ведь его прогой файлы теперь открывают, не так ли? )
По-моему получиться очень удобно. Пользователь может даже не заметит, что что-то происходило, кроме того что Undo стало активно и Save.
 
Ответ: Помогите с макросом под ХЗ

Ээ, кому надо могут вставить код в ThisDocument->выбрать вверху GlobalDocument потом справа событие DocumentOpen и будет создана болванка процедуры. Работать будет если в опциях корела отключить ВБА->Delay load VBA, разумеется. код можно вставить модуль ThisDocument от любого макроса, не только RF
 
Ответ: Помогите с макросом под ХЗ

wOxxOm сказал(а):
Ээ, кому надо могут вставить код в ThisDocument->выбрать вверху GlobalDocument потом справа событие DocumentOpen и будет создана болванка процедуры. Работать будет если в опциях корела отключить ВБА->Delay load VBA, разумеется. код можно вставить модуль ThisDocument от любого макроса, не только RF
Спасибо за инфу, будем знать.
Ну тогда выходит, что нету никаких сложностей с правкой Miter Limit в автоматическом режиме.
 
Статус
Закрыто для дальнейших ответов.