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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Изменение форматированного текста посредством lisp

Изменение форматированного текста посредством lisp

Ответ
Поиск в этой теме
Непрочитано 03.03.2006, 10:49 #1
Изменение форматированного текста посредством lisp
Tramp
 
Регистрация: 12.01.2006
Сообщений: 114

Уважаемые, помогите разобраться в вопросе.

Задача:
Есть текст (mtext), содержащий численные данные. Известно, что в тексте есть только число и оно одно. То есть, отделять численную часть от текстовой, или выбирать из нескольких численных не требуется. Длина текста (количество цифр в числе) заранее неизвестно. Нужно, чтобы процедура увеличивала значение на фиксированную величину (ну, к примеру, на единицу).

Путь решения:
Выбираем текст, снимаем его dxf код, из кода вытаскиваем поле с меткой 1 (там хранится содержание текста), преобразуем текст в число, увеличиваем на сколько нужно, преобразуем обратно в текст, формируем новый код, замещая нужное поле, и entmod'ом меняем изначальный объект.

В чём засада:
Всё, что я выше изложил, прекрасно работает, если формат текста полностью соответствует стилю, чьё название сидит в поле с меткой 7. Если же текст отформатирован в текстовом редакторе (шрифт изменён, курсив и т.д.) то все эти изменения вносятся в поле 1, вместе с содержанием текста.

Не подскажете, как можно вычленить содержимое текста из символов формата?
Просмотров: 5940
 
Непрочитано 03.03.2006, 10:57
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Попробуй отсюда: http://www.autocad.ru/cgi-bin/f1/board.cgi?t=20905TQ
Оно?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.03.2006, 11:11
#3
Tramp


 
Регистрация: 12.01.2006
Сообщений: 114


На беглый взгляд, похоже, что оно. Вечером будет время, покручу поподробнее - там много функций, которых я без справочника не опознаю
KpbIc, а оно может сохранить элементы снесённого форматирования, дабы потом опять вернуть его в текст?
Tramp вне форума  
 
Непрочитано 03.03.2006, 11:14
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Что значит "элементы снесенного форматирования"? Это определения фонта, курсивности и прочего "удаленного"? На такое оно не рассчитывалось, но сделать в качестве расширенных данных либо ldata можно попробовать. Вопрос - а оно действительно надо?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 03.03.2006, 11:28
#5
Tramp


 
Регистрация: 12.01.2006
Сообщений: 114


Цитата:
Вопрос - а оно действительно надо?
Для меня это сейчас больше учебный пример, возможность попрактиковаться. Хотя, могло бы облегчить труд и мне, и коллегам.

Спасибо за совет. Думаю, что ещё вернусь к этой теме в ближайшее время.
Tramp вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Изменение форматированного текста посредством lisp

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

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