muck 发表于 2022-7-6 10:40:29

在lisp中将文本转换为多行文字?

主题在lisp中将文本转换为多行文字?
用什么lisp命令将字符串转换为多行文字?
 
我正在寻找(或可能作出)一个lisp例程,将改变文本
通过允许用户在图形中选择一组字符串,将其转换为多行文字。
例程将第一个文本字符串更改为多行文字,然后
允许用户编辑该字符串。然后,例程将转到第二个字符串进行多行文字转换,然后让用户编辑该字符串。然后rountine将连接到第三根弦,依此类推。希望常规动作能从左向右再向下移动。像读书一样的运动。有人这样做吗??
 
首先,有人知道用lisp命令将文本转换为多行文字吗?
 
 
非常感谢。

tzframpton 发表于 2022-7-6 10:44:26

你在运行什么版本的CAD?如果是完整版本,那么您可能已经通过Express Tools拥有了此功能。在命令行中键入TXT2MTXT,然后按照提示进行操作。
 

muck 发表于 2022-7-6 10:47:11

AutoCAD 2007版。我注意到,当一个人使用下拉菜单(即txt2mtxt)选择一组文本字符串时,该命令会将所有字符串放入一个多行文字框中。通常是顶部的多行文字框。我真的不想那样。如果我选择10个文本字符串转换为多行文字,我想通过窗口拾取一组文本字符串,在原始位置获得10个多行文字框。希望多行文字与前一行文字处于相同的位置
文本字符串。
非常感谢。

Raggi_Thor 发表于 2022-7-6 10:50:47

这可以在lisp中完成,但大多数人希望将严重的数据文本分组到一个多行文字中。
 
关于这个:运行命令txt2mtxt,选择一个文本,然后按enter键重复并选择下一个,依此类推?

lpseifert 发表于 2022-7-6 10:55:31

试试这个。。。

;changes text to individual mtext by Carl B.

(princ "\nType T2M to start")
(defun c:t2m ()
(setq Tset (ssget '((0 . "*TEXT"))))   ;filter text in selection set
                  
(setq    Setlen (sslength Tset)       ;setq number of entties in selection set, setq count(er) to 0
   Count0
)
                  
(repeat SetLen                           ;repeat setq times
                  
   (setq Ename (ssname Tset Count))   ;setq ename to be the "0..." entity in selection set Tset
                  
   (command "_txt2mtxt" Ename "")
   (setq Count (+ 1 Count))                  ; add 1 to Count(er)
                  
)                ; Repeat   
(princ)
)

muck 发表于 2022-7-6 10:58:23

我将尝试上面的代码,看看它能做什么。
我发现了一件事。
 
(命令“txt2mtxt”)
;打开“多行文字转换选项”对话框。如果我关闭文字自动换行
;对话框中的功能“我的窗口转换”将保留文本
;但我不知道如何关闭文字包装
;使用lisp的特征。有趣的信息。

rkmcswain 发表于 2022-7-6 11:00:43

 
ToolPac包括一个例程,用于将多个文本实体转换为多行文字,而无需组合它们。

ofh19664 发表于 2022-7-6 11:05:39

 
 
我读了这篇文章,我想知道是否有一些lsp例程可以同时更改多行文字的高度,例如,如果我有10个多行文字框,但具有不同的高度,请选择所有这些框,并给它们相同的高度,并保持相同的起点。
 
谢谢你的帮助!!
 
Oskr公司

Raggi_Thor 发表于 2022-7-6 11:07:18

是的,这是可能的,但多行文字的问题是,在文字中可以有各种格式替代。
如果多行文字都具有默认格式,则可以使用“属性”窗口更改高度。

muck 发表于 2022-7-6 11:11:58

我遇到的最大问题是将多行文字宽度与原始文字匹配
将文本转换为多行文字后。
非常感谢。
页: [1] 2
查看完整版本: 在lisp中将文本转换为多行文字?