The Dark Side Of Design
Главная » Статьи » Мои статьи |
УСОВЕРШЕНСТВОВАННАЯ ВЕРСИЯ "ПЕРИМЕТР 2014"
К 2014 году я решил выдать на всеобщее рассмотрение новую версию этого макроса. Но! Работа над ним еще идет в направлении надежности. Поэтому настоятельно прошу хотя бы раз в неделю заходить сюда для обновления версии (или в комментах оставляйте адреса, я сделаю рассылку). Заранее прошу прощения за возможные неполадки или непредвиденные зависания Корела.
Я полностью переписал его код под свои цели. Думаю, всем пригодится измеритель, способный обработать без ошибок неограниченное количество объектов, отсеивая при этом неизмеряемые (битмапы, эффекты и пр.), т.е. не нужно (как в других измерителях) предварительно готовить объекты к измерению.
И хочу отметить еще два, на мой взгляд, удобных нововведения: 1) макрос "подсвечивает" объекты, которые измерил (остальные временно "прячет"); 2) макрос создаёт сторку-результат измерений там, где мы ему укажем.
Устанавливается так же, как все макросы - смотрите инструкцию ниже (в предыдущей версии)
Сначала о грустном: я проверял работу макроса пока еще не во всех версиях, только в Х6, Х5, Х4. Большая просьба, если у кого еще есть более ранние версии CorelDraw, проверьте сначала работу этого макроса, прежде чем пользоваться им. Например, в версии CorelDraw 11 неизмеряемые объекты исчезают навсегда. Я постараюсь в ближайшее время устранить этот недостаток.
Итак, описание новой версии:
1) Ввиду особенностей матаппарата самого CorelDraw, точность измерения длин криволинейных фигур не является абсолютно точной. Погрешность составляет 0,01%, т.е. если периметр получился, например, 10 метров, то ошибка составит +- 1 миллиметр. Для дизайна - это сверхточность.
2) Макрос анализирует типы объектов и производит определенные действия с ними:
– отсеивание объектов, не подлежащих измерению: bitmap, OLE, linear dimension, mesh fill, HTML;
– drop-shadow (тени) - "исчезают" и измеряется только ВЕКТОРНЫЙ источник; – artistic media перья (спрей, разбрызгивание объектов и т.д.) - измеряется только направляющая кривая;
– эффект контейнера - измеряется только периметр контейнера, содержимое не учитывается;
– эффект bevel - измеряется только основной объект;
– размерные линии (linear dimention) - не измеряются;
– любые типы текстовых объектов можно не переводить в кривые, они будут посчитаны;
– объект Таблица тоже входит в измеряемые объекты и будет измерен;
– измеряются также без проблем: сгруппированные разнотипные объекты, эффекты: контур, экструзия, конверт, перспектива, перетекание объектов;– эффект перетекания объектов вычисляется полностью, т.е. оба базовых и все перетекающие объекты.
3) Более надежный алгоритм:
– не возникает программной ошибки в случае объектов с большим количеством точек. Например, веторные кривые, полученные трассировкой изображений в CorelTRACE; 4) Визуализация процесса: – все объекты, которые подлежат измерению, подсвечиваются желтым контуром, а те, которые не измеряются - "исчезают" на время работы макроса. Всё это можно увидеть, предварительно выставив зум на выделенные объекты, а затем при появлении окна, перемещая его по экрану. Но! Есть у меня уже версия, где окно программное не появляется, а информация создаётся в документе в виде текста;
5) Получение итогов:
– выводится в окне статистика о количестве измеренных и неизмеренных объектов;
– по завершению работы макрос спросит, нужно ли создать текст с полученным результатом измерений. Если ответ "Да", то нужно кликнуть в то место, где должен появиться этот тект.
6) Планы на будущее:
– предполагаю добавить возможность измерять периметр битмапов. Я имею ввиду периметр контурной рамки, которую мы зачастую редактируем у битмапов;
– надеюсь на вашу информационную поддержку, т.е. на отзывы, замечания, пожелания и т.д., чтобы я мог усовершенствовать этот инструмент.
Ну, и наконец, на всякий случай для формальности замечу, что программка - бесплатная. Хотите - пользуйтесь, хотите - нет. Я не несу ответственности за возможные сбои, ошибки и т.п. последствия работы этого макроса. При возникновении таких случаев я обещаю разобраться в ситуации и сделать попытку исправить код макроса. Вобщем, всё будет видно по отзывам. Надеюсь на вас.
С уважением, Сергей Баюров, г. Харьков.
ПРЕДЫДУЩАЯ ВЕРСИЯ МАКРОСА: Предлагаю "скачать бесплатно" дополнение к CorelDRAW (любой версии), с помощью которого вы сможете узнавать длину периметров ваших векторных фигур. Итак... весь процесс займет у вас пять-десять минут. 1) Закройте полностью CorelDraw (если он был открыт, конечно). 2) Скачиваем: ССЫЛКА ДЛЯ СКАЧИВАНИЯ ПРОГРАММКИ 3) Переносим ее в директорию, где у вас установлен Корел (или сразу туда скачиваем), у меня этот путь выглядит так: C:\Program Files\Corel\CorelDRAW Graphics Suite X5\Draw\GMS или так: C:\Program Files(x86)\Corel\CorelDRAW Graphics Suite X5\Draw\GMS 4) Чтобы иметь этот инструмент "под рукой", нужно установить его значок в панель инструментов Корела. Кто знает как, можете пропустить этот пункт. Запускаем CorelDraw (создаем пустой документ). Ищем и нажимаем: — в меню: Инструменты/Параметры (Tools/Options) или нажимаем Ctrl+J. Откроется окно настроек Корела; — в открывшемся окне: Рабочее пространство-Настройки-Команды (Workspace-Customization-Commands); — в раскрывшемся пункте: Макросы (Macros) - найдите в выпадающем списке (вверху возле бинокля); — в появившемся списке: PerimeterModule... ; — осталось выбрать вид иконки, открыв вкладку Вид (Appearance) - это на ваше усмотрение, можно в том окошке нарисовать свою, можно импортировать готовую... например мою: - ссылка для скачивания иконки Выглядит это так: 5) Теперь осталось ухватить макрос за значок (возле названия PerimeterModule) и перетянуть на любую рабочую панель инструментов (или просто на рабочее поле - будет создана индивидуальная панелька для этого макроса). 6) Не забудьте сказать "ОК" внизу окна Параметров, чтобы сохранить проделанную работу. 7) И, на всякий случай, нажмите: Инструменты/Сохранить как настройки по умолчанию (Tools/Save_settings_as_Default) . Проверяем работу макроса. Выделите несколько объектов (не должно быть в выделении растровых картинок), нажмите на значок макроса... и о, чудо! Если чуда не произошло (окошко с информацией не появилось), значит у вас не установлен модуль VBA (visual basic for applications). Не беда! Сейчас установим. — закрываем CorelDraw и запускаем инсталляцию Корела, ждем появления первого окна — в первом окне выбираем пункт "Модифицировать" (Modify), а в некоторых версиях "Add/Remove components" (добавить/удалить компоненты), жмем "Далее" (Next); — в следующем окне переключаемся на закладку "Особенности" (Features) и жмем справа от пункта "Утилиты" (Utilites) на список и устанавливаем в нем галочку напротив пункта Visual Basic for Applications, нажимаем "Далее" (Next) - и так далее подтверждаем, где надо, уже до конца установки. или возможен такой вид окна: Запускаем CorelDraw и, если сделано все правильно, то макрос должен заработать. Проверяем! Если не работает, то пишите мне гневный комментарий :) постараюсь помочь.
Вот и всё. Вуаля!
Авторcтво программы "PerimeterModule" Copyright © Nicholas Wilkinson 2001. "Вы можете распространять эти инструменты на любом носителе, и не можете назначать цену либо получать деньги за эти инструменты. Вы можете распространять эти инструменты конфиденциально своим друзьям и коллегам на такой долгий срок, пока вы только используете полностью установленную программу, с всеми внедренными лицензионными соглашениями и авторскими правами." Близкие по теме материалы:
| |||
Категория: Мои статьи | Добавил: sb (28.07.2010) | |||
Просмотров: 89999 | Комментарии: 28
| Теги: |
Всего комментариев: 28 | 1 2 3 » | ||||||
| |||||||
1-10 11-20 21-24 | |||||||