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

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

Нужен Lisp для перевода однострочного в многострочный текст

Ответ
Поиск в этой теме
Непрочитано 21.09.2015, 07:05 #1
Нужен Lisp для перевода однострочного в многострочный текст
Wonderland
 
Регистрация: 17.09.2015
Сообщений: 10

Нужно, чтобы каждый объект из однострочного текста преобразовывался в отдельный объект многострочного текста. В интернете есть подобные утилиты, но они объекты однострочного текста группируют в единый объект многострочного, как, например, в Autocad в панели инструментов Express - "Convert Text To Mtext" или утилита Lee-Mac - "Text2MTextV2-0".
Просмотров: 9312
 
Непрочитано 21.09.2015, 08:12
#2
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611


и в чем проблема? Какие проблемы в написании? В чем "затык"?
Где код который не работает?
Boxa вне форума  
 
Автор темы   Непрочитано 21.09.2015, 09:18
#3
Wonderland


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


К сожалению, навыка в написании кода нет.
Wonderland вне форума  
 
Непрочитано 21.09.2015, 09:21
#4
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611


Цитата:
Сообщение от Wonderland Посмотреть сообщение
К сожалению, навыка в написании кода нет.
ИМХО, тогда Вы ошиблись разделом, Вам сюда: http://forum.dwg.ru/forumdisplay.php?f=33
Boxa вне форума  
 
Автор темы   Непрочитано 21.09.2015, 11:40
#5
Wonderland


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


И все же, может уже существует такая утилита?
Wonderland вне форума  
 
Непрочитано 21.09.2015, 12:00
#6
Кулик Алексей aka kpblc
Moderator

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


txt2mtxt, в режиме одиночного выбора.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 21.09.2015, 12:16
#7
Wonderland


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


Кулик Алексей aka kpblc, объектов множество. Txt2mtxt не подходит как вариант. Нужна другая утилита.
Wonderland вне форума  
 
Непрочитано 21.09.2015, 12:34
1 | #8
trir


 
Регистрация: 18.12.2010
Сообщений: 5,107


http://dwg.ru/lib/1290
trir вне форума  
 
Непрочитано 21.09.2015, 13:09
#9
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,010


Код:
[Выделить все]
 (defun c:-txt2mtxt (/ ss cnt)
  (setq ss (ssget '((0 . "TEXT"))))
  (if ss
    (repeat (setq cnt (sslength ss))
      (command "txt2mtxt" (ssname ss (setq cnt (1- cnt))) "")
    )
  )
)
Nike вне форума  
 
Непрочитано 21.09.2015, 17:18
#10
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от trir Посмотреть сообщение
http://dwg.ru/lib/1290
спасибо, пополнит мою литературную помойку
gomer вне форума  
 
Автор темы   Непрочитано 22.09.2015, 07:11
#11
Wonderland


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


Nike, подскажите, куда конкретно вставить код? В исходный код функции txt2mtxt?

Последний раз редактировалось Wonderland, 22.09.2015 в 07:41.
Wonderland вне форума  
 
Непрочитано 22.09.2015, 09:49
#12
trir


 
Регистрация: 18.12.2010
Сообщений: 5,107


vlide
http://dwg.ru/pub/9

Последний раз редактировалось trir, 22.09.2015 в 09:55.
trir вне форума  
 
Непрочитано 22.09.2015, 12:25
1 | #13
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Convert text to mtext in lisp?
Text2MText Upgraded
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 22.09.2015, 14:50
#14
Wonderland


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


Благодарю всех!!! Все работает)))
Wonderland вне форума  
 
Непрочитано 23.09.2015, 00:33
#15
sathalex


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


Код:
[Выделить все]
 (defun c:текст2Мтекст (/		nameset	  setlength namtxtrun txtrun
	      p_text	p_kord	  p_sloy    p_styl    p_ugol
	      p_heig	ugol	  deltX	    deltY     n_kord
	      spis_st
	     )
  (setq nameset (ssget "_:L" '((0 . "TEXT"))))
  (setq setlength (sslength nameset))
  (setq i -1)
  (repeat setlength
    (setq i (1+ i))
    (setq namtxtrun (ssname nameset i))
    (setq txtrun (entget namtxtrun))
    (setq p_text (assoc 1 txtrun))
    (setq p_kord (cdr (assoc 10 txtrun)))
    (setq p_sloy (assoc 8 txtrun))
    (setq p_styl (assoc 7 txtrun))
    (setq p_ugol (assoc 50 txtrun))
    (setq p_heig (assoc 40 txtrun))
    (setq ugol (- (* 2 pi) (cdr p_ugol)))
    (setq deltX (* (cdr p_heig) (sin ugol)))
    (setq deltY (* (cdr p_heig) (cos ugol)))
    (setq n_kord (list 10
		       (+ (car p_kord) deltX)
		       (+ (cadr p_kord) deltY)
		       (last p_kord)
		 )
    )
    (setq spis_st (list	'(0 . "MTEXT")	 '(100 . "AcDbEntity")
			p_sloy		 '(100 . "AcDbMText")
			n_kord		 p_heig
			p_text		 p_ugol
			p_styl
		       )
    )
    (entmake spis_st)
    (entdel namtxtrun)
  )
)
sathalex вне форума  
 
Непрочитано 23.09.2015, 00:55
#16
Лиспер


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


sathalex, код, во-первых, можно упросить. Во-вторых, ты напрочь забыл про выравнивая текстов.
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
 
Автор темы   Непрочитано 23.09.2015, 09:14
#17
Wonderland


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


Возникла проблема. При переводе в многострочный текст коэффициент сжатия не сохраняется.
Wonderland вне форума  
 
Непрочитано 23.09.2015, 09:19
#18
Кулик Алексей aka kpblc
Moderator

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


Потому что читать надо про сжатие, принудительное форматирование и проч.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.09.2015, 13:03
#19
Wonderland


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


в смысле?
Wonderland вне форума  
 
Непрочитано 24.09.2015, 13:33
#20
Кулик Алексей aka kpblc
Moderator

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


В смысле - читай в справке про спец.символы MTEXT.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Нужен Lisp для перевода однострочного в многострочный текст



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перевернутый при редактировании многострочный текст k-r AutoCAD 7 19.06.2014 11:57
Многострочный текст, при редактировании меняет отображение шрифта, хотя он на самом деле не изменялся??? xmelika AutoCAD 11 29.10.2013 08:13
{Конкурс} Lisp. Задачки для студентов gomer LISP 10 05.01.2011 16:33
LISP. Прочитать .cui-файл. Проблема - русский текст (юникод?) Ax3 LISP 4 13.10.2010 12:31
Программа оболочка на многострочный текст? Russik AutoCAD 16 16.09.2010 00:01