明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2855|回复: 7

删除文字的首尾空格后原地保持文字位置

[复制链接]
发表于 2012-11-15 11:22:24 | 显示全部楼层 |阅读模式
  1. (DEFUN C:TT ()
  2. (PRINC "\Select Text(s) 选择文字 :")
  3. (IF (SETQ SS (SSGET '((0 . "TEXT") (1 . "* *")))) (PROGN
  4.   (SETQ I -1)
  5.   (REPEAT (SSLENGTH SS)
  6.    (SETQ ENT (ENTGET (SSNAME SS (SETQ I (1+ I))))
  7.   AA (CDR (ASSOC 1 ENT))
  8.   CC ""
  9.   J 0)
  10.    (REPEAT (STRLEN AA)
  11.     (IF (/= (SETQ TMP (SUBSTR AA (SETQ J (1+ J)) 1)) " ")
  12.      (SETQ CC (STRCAT CC TMP))
  13.     )
  14.    )
  15.    (SETQ ENT (SUBST (CONS 1 CC) (ASSOC 1 ENT) ENT))
  16.    (ENTMOD ENT)
  17.   )
  18. ))
  19. (PRINC)
  20. )
复制代码

这个是ZZXXQQ写的,删除空格后文字好像会移动,而且文字中间的空格也被删了,最好是原地保持文字,同时要提示用户是否删除文字中间的空格
哪位师傅看看有没有高招啊??
谢谢!!!
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2012-11-15 12:49:39 | 显示全部楼层
删除空格前把文字修改成正中格式即可
发表于 2012-11-15 13:19:27 | 显示全部楼层
  1. (DEFUN C:TT ()
  2. (PRINC "\Select Text(s) 选择文字 :")
  3. (IF (SETQ SS (SSGET '((0 . "TEXT") (1 . "* *")))) (PROGN
  4.   (SETQ I -1)
  5.   (initget "Yes No")
  6.   (setq kd (getkword "\n[删全部空格Yes/删头尾空格No]<No>"))
  7.   (if (null kd) (setq kd "No"))
  8.   (REPEAT (SSLENGTH SS)
  9.    (SETQ ENT (ENTGET (SSNAME SS (SETQ I (1+ I))))
  10.   AA (CDR (ASSOC 1 ENT))
  11.   CC ""
  12.   J 0)
  13.     (setq p1 (car (textbox ent)))
  14.     (if (= "Yes" kd)
  15.    (REPEAT (STRLEN AA)
  16.     (IF (/= (SETQ TMP (SUBSTR AA (SETQ J (1+ J)) 1)) " ")
  17.      (SETQ CC (STRCAT CC TMP))
  18.     )
  19.    )
  20.       (setq CC (vl-string-trim " " AA))
  21.       )
  22.    (SETQ ENT (SUBST (CONS 1 CC) (ASSOC 1 ENT) ENT))
  23.    (ENTMOD ENT)
  24.     (setq p2 (car (textbox ent)))
  25.     (command "move" (cdr (assoc -1 ent)) "" p2 p1)
  26.   )
  27. ))
  28. (PRINC)
  29. )
 楼主| 发表于 2012-11-15 13:36:55 | 显示全部楼层
Gu_xl 发表于 2012-11-15 13:19

师傅:如果首端有空格的话,执行后文字会往前移动,不会原地保留
中间的空格删除不掉
师傅再看看
谢谢!!

点评

不会的!我测试没问题!  发表于 2012-11-15 14:59
 楼主| 发表于 2012-11-15 15:07:04 | 显示全部楼层
我做了一个gif的动画,执行完毕后文字就跑了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2012-11-15 15:08:53 | 显示全部楼层
dcl1214 发表于 2012-11-15 13:36
师傅:如果首端有空格的话,执行后文字会往前移动,不会原地保留
中间的空格删除不掉
师傅再看看

执行完毕后文字跑了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

点评

和文字对齐方式有关!左对齐的没问题,居中对齐的不行!其他对齐方式你自己研究看看  发表于 2012-11-15 15:44
发表于 2019-6-22 02:06:18 | 显示全部楼层

多行文本删不了
发表于 2022-8-25 11:11:38 | 显示全部楼层
太好了,学习了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-15 16:55 , Processed in 0.194071 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表