文字合并如何设置间距和行距大于某一个值不合并,如何取合并中的第一个字的大小及...
- (defun c:txt()
- (vl-load-com)
- (setq en (car (entsel "\n选择文字: "))) ;;;选择文字
- (setq txt1 (vla-get-TextString (vlax-ename->vla-object en))) ;;;获取“文字1”
- (setq en2 (car (entsel "\n选择文字: ")))
- (while en2
- (setq oxbj (vlax-ename->vla-object en))
- (setq txt1 (vla-get-TextString oxbj)) ;;;选择“文字”
- (setq txt2 (vla-get-TextString (vlax-ename->vla-object en2))) ;;;获取“文字2”
- (command "erase" en2 "") ;;;删除“文字2”
- (setq txt (strcat txt1 txt2)) ;;;将 “文字1” 和 “文字2” 合并为 “txt”
- (vla-put-TextString (vlax-ename->vla-object en) txt) ;;;将文字1替换为 “txt”
- (setq en2 (car (entsel "\n选择文字: ")))))
总结了一下,文字合并涉及问题1文字的间距2文字的行距3文字的角度4合并的字取合并前的第一个字的大小角度5合并按从左到右的顺序或从上到下的顺序6框选文字7合并前文字消重7天正字转成TEXT。
不知哪位高手能把这一系列问题解决。
想想简单的文字合并涉及东东还真不少 |