| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Замена текстового стиля

LISP. Замена текстового стиля

Ответ
Поиск в этой теме
Непрочитано 18.09.2008, 17:53 15 | 1 #1
LISP. Замена текстового стиля
VVA
 
Инженер LISP
 
Минск
Регистрация: 11.05.2005
Сообщений: 6,990

По мотивам Замена текстового стиля
Команды CTS и CTSU подверглись косметическим улучшением.
Добавлена команда TSUP - изменение начертания текстов, атрибутов на основе установок выбранного стиля (начертание, сжатие, угол наклона).
Использована функция ru-textstyle-update любезно предоставленная ShaggyDoc
Описание команд:
Как это работает - см пост #12
CTS - замена текстовых стилей у всех объектов на выбранный
CTSU - замена текстовых стилей у всех объектов на выбранный с очисткой форматирования многострочных текстов
TSUP - Для выбранного стиля изменяется начертания всех существующих ТЕКСТОВ, АТРИБУТОВ во ВСЕХ примитивах, включая блоки в соответствии с установками стиля (начертание, сжатие, угол наклона). Сначала с помощью команды _style задаем необходимые установки стиля (шрифт, наклон, сжатие/растяжение). Затем командой TSUP для всех текстов и атрибутов, вычерченных этим стилем, устанавливается наклон, сжатие/растяжение такой же как и в определении стиля.
UNF-MTEXT - Убрать форматирование мтекста
Допустим у Вас текст, вычерченный стилем Стиль1 с углом наклона 15 градусов. Вызываем команду _style и выставляем в стиле Стиль1 угол 0. В тексте угол остался прежним 15 градусов. Чтобы синхронизировать параметры текста с параметрами стиля (наклон, сжатие/растяжение) и вызываем команду TSUP.

Возможный вариант макроса для пунктов 3-5
Код:
[Выделить все]
(if (null C:CTS)(load "change text styles (cts)"));CTS;(cts:layer-status-save);(ru-textstyle-update "*");_.PURGE;
***Изменения
22.10.2008 Добавлена обработка форматирования МТЕКСТОВ для Автокада с 2008 версии (выравнивание влево, вправо, посередине, по ширине, распределенное)
02.12.2008 Изменена ф-ция cts:msg-yes в соответствии с постом #46 Диалог строится не VBA, а лиспом (dcl)
26.02.2009 Версия 1.3 Исключена обработка блоков внешних ссылок (Спасибо Sleekka). Добавлен выбор игнорируемых стилей
16.03.2009 В версии 1.3 CTSU исправлена ошибка с разным количеством аргументов
05.02.2010 Добавлена обработка дополнительного форматирования в ф-цию mip_MTEXT_Unformat (см. сообщение wetr)
09.03.2010 В версии 1.4 в TSUP исправлена ошибка обработки примитивов только на текущем листе
03.06.2010 Отдельная команда для удаления форматирования мтекста
23.12.2011 UNF-MTEXT (vla-SetCellState item row col acCellStateNone) Снятие блокировки ячейки
21.11.2013 Добавлена обработка MLEADER. Команда CTS
20.04.2016 Добавлена функция CTS:GET-TEXTSTRING (как замена vla-get-textstring. Т.к. неверно возвращает строку при наличии юникод символов)
http://forums.autodesk.com/t5/visual...s/td-p/4365165


Описание
Цитата:
DESCRIPTION

StripMtext v5.0b Copyright© Steve Doman and Joe Burke 2010

StripMtext is an AutoLISP program that runs inside AutoCAD 2000 or above and enables the AutoCAD user to quickly remove unwanted Mtext formatting embedded in Mtext, Mleaders, Dimensions, Tables, and Multiline Attributes objects.
Оригинальный пост (требуется регистрация)





В версии 1.5 добавлена отдельная команда UNF-MTEXT для удаления форматирования MTEXTa
В версии 1.6 добавлено снятие блокировки ячейки таблицы при установке связи Datalink
Важно!!! Начиная с 2021 Автокада может не срабатывать команда stripmtext. Решение - установить системную переменную LISPSYS=0
См пост #281 и #282 или гугл

Вложения
Тип файла: lsp StripMtext v5-0c.lsp (60.1 Кб, 22808 просмотров)
Тип файла: lsp change text styles (cts) 2.0c.LSP (44.3 Кб, 7090 просмотров)

__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 03.11.2023 в 14:28. Причина: см пост #290
Просмотров: 583832
 
Непрочитано 18.09.2008, 18:22
#2
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


что такое деформатирование? (это перевод в обычный текст?)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 18.09.2008, 18:30
#3
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Это я так перевел unformat. Деформатирование - очистка форматирования многострочного текста. Исправил в #1
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 18.09.2008, 18:34
#4
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


VVA, что то не могу сообразить мне дали чертеж АР там есть мой стиль, я черчу прямыми буквами, а лисп не выправил ни в размерах цыфры не просто буквы может я не понял принцип лиспа?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 18.09.2008, 21:46
#5
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


dextron3, Чем и что делал? Думаю что не понял принципа.

*** Добавлено. Исправлена неточночть в ru-textstyle-update. Обновлен #1.

> ShaggyDoc в ru-textstyle-update добавил проверку (выделена красным). Имя стиля может хранится в нижнем регитре.
Код:
[Выделить все]
    (if (and (or (= "TEXT" ent_type)
                 (= "ATTRIB" ent_type)
                 (= "ATTDEF" ent_type)
             ) ;_ end of or
             (or (= "*" style_name)
                 (= (strcase style_name)(strcase (cdr (assoc 7 ent_data))))
             ) ;_ end of or
        ) ;_ end of and
...
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 18.09.2008 в 22:13.
VVA вне форума  
 
Непрочитано 18.09.2008, 22:56
#6
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


вот видеоролик у меня не работает ничегошеньки....
Вложения
Тип файла: rar Untitled.rar (1.42 Мб, 1327 просмотров)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 19.09.2008, 10:47
#7
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


В твоем фильме не видны настройки текстового стиля GOST 2.304. TSUP согласовывает настройки СТИЛЯ (начертание, наклон, ширину) и текстов, вычерченных этим стилем
Изображения
Тип файла: gif TSUP.gif (225.4 Кб, 20179 просмотров)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 19.09.2008, 20:48
#8
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


VVA,

вот мои настройки
Вложения
Тип файла: rar Untitled1.rar (565.2 Кб, 981 просмотров)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 19.09.2008, 20:51
#9
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


А вот автокадовский файл для разминки
Вложения
Тип файла: rar AR.rar (184.6 Кб, 826 просмотров)
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 20.09.2008, 11:03
#10
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


dextron3, Мы наверное не понимаем друг друга. Разминка прошла успешно. Я изменил описание команды TSUP в #1. Может будет немного понятнее. Еще обращаю внимание, что в коде было исправление и нужно было скачать его еще раз. Не знаю, есть ли ты в числе тех 11 на данный момент, но скачай еще раз на всякий случай.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 20.09.2008, 16:11
#11
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


VVA, теперь я начал Вас понимать, оказывается мы друг друга не понимали:

Почему я не то подумал:


Предыстория.


Изначально я приучился чертить в одном стиле с появления программы СПДС, так как там можно было эффективно использовать масштабы, не ковыряясь в стилях, еще по молодости, когда я сталкнулся с масштабированием, я для каждого масштаба создавал отдельный стиль, но при этом во всех стилях использовал одинаковый текст и наклон, а также сжатие, поэтому и получалось очень много стилей, соответсвенно свои стили приходили из других организаций, иногда доходило что в одном чертеже около 18 стилей. Приносит мне архитектор черчеж, у него площади одним стилем начерчены, размеры другим, надписи другим и тп. вот вам и набралось стилей...

Хотелось просто иметь волшебную кнопку, и когда приносят с дальних краев чертеж, нажал бы эту кнопку, и чертеж превратился в чертеж как будто это рисовал его ты со своим до боли знакомым стилем, а все заморские стили удалялились или пурджелись...


Как я думал это работает.


1. Выбираем мной настроенный стиль.
2. Все стили переводятся в мой настроенный стиль (а не каждый для каждого в отдельности, как теперь я понял работает у вас)
3. В итоге чертеж будет выполнен одним стилем, с соответсвующими ему параметрами (а то получается эти стили из чертежа в черчеж по всему городу таскается)
4. После проведения процедуры все ненужные стили удаляются


Важно:
Сам лисп должен менять стиль, т.е. текст, толщину, наклон, но не должен менять высоту букв.(и размеров это тоже касается, а вот засечки беруться из моего стиля)

PS Если такое возможно, буду ждать ответа, а если не целесообразно то буду ждать аргументов..

заранее спасибо..
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 21.09.2008, 11:37
#12
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Это работает так:
1. CTS приводит все текстовые примитивы к вабранному тобой стилю.
2. TSUP синхронихзирует тексты с выбранным или выбранными (почитай внимательно диалог) стилями., т.е. назначает текстам угол наклона и степень сжатия-растяжения как в стиле, которым они в данный момент написаны.
Толщину задавай весом линии, к этой теме она отношения не имеет.
Высота остается такой как и была.
Лисп стиль не меняет, а берет из него данные (угол наклона и сжатие/растяжение)
Поэтому в твоем случае
1. Создаешь или выбираешь из существующих стиль, который оставишь
2. Выставляешь в этом стиле нужный шрифт, угол наклона и степень сжатия/растяжения
3. CTS (или CTSU) - всем текстам назначается твой стиль
4. TSUP - синхронизирует тексты и описание стиля.
5. PURGE (можно purge выполнить после п. 3.)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 21.09.2008, 12:08
#13
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


VVA, о то что надо, как и хотел, спасибо!

можно у вас макрос теперь на кнопку попросить, с 3 го по 5й пункт, шоб сразу процесс автоматом шел...
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 21.09.2008, 15:55
#14
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Обновил #1
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 21.09.2008, 19:49
#15
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


VVA, не работает максрос чтото делает непонятное и хде в макросе TSUP
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 21.09.2008, 20:02
#16
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Код:
[Выделить все]
^C^C(if (null C:CTS)(load "Lisp/CTSU.lsp")) CTS;TSUP;-Purge;a;;n;-Purge;a;;n;-Purge;a;;n
вот мои наброски
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 21.09.2008, 20:16
#17
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


вот кстати принесли чертеж электрики, куча стилей
Миниатюры
Нажмите на изображение для увеличения
Название: Snap12.jpg
Просмотров: 3521
Размер:	29.8 Кб
ID:	10268  
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 21.09.2008, 20:57
#18
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Код:
[Выделить все]
(if (null C:CTS)(load "change text styles (cts)"));CTS;(cts:layer-status-save);(ru-textstyle-update "*");_.-PURGE;_ALL;*;_No
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 21.09.2008, 21:10
#19
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Offtop: VVA, TSUP так и не увидел
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 22.09.2008, 11:40
#20
gest

GEODATA Engineering S.p.A.
 
Регистрация: 11.02.2005
Монино
Сообщений: 686


Удалено.
gest вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Замена текстового стиля

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена текстого стиля Shoorup Программирование 43 19.05.2015 09:22
Есть ли замена текстового редактора MtmdEdit 2.4.0 beta for AutoCAD 2007 dextron3 Программирование 16 23.06.2008 20:54
Библиотека доступа к содержимому растров из LISP - существуе kp+ LISP 6 16.10.2007 21:45
загрузка DOS прог через LISP Gaa LISP 15 12.08.2005 19:19
Настройка "Стандартного" текстового стиля. Кулик Алексей aka kpblc AutoCAD 6 23.10.2003 22:49