找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2339|回复: 12

[LISP程序]:我的LSP文字排版程式,很好用的。

[复制链接]
发表于 2002-8-14 13:51:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
  1. ; 创作说明 文字排版程式。对DTXT有用!
  2. ;此程序由seaon编写!
  3. ;seaon@eyou.com
  4. (defun c:Ts (/ pp2 startpts ss l ll fal th pt1 pty);start1
  5.   (if (not (setq SS (ssget "i")))
  6.     (progn
  7.       (prompt "选择文字实体。\n")
  8.       (setq SS (ssget))
  9.     )
  10.   )
  11. (if (ssname ss 0)
  12. (if (/= (cdr (assoc 0 (entget (ssname ss 0)))) "TEXT")
  13. (progn
  14. (alert " 所选实体中并非都是文字.ho-o! ")
  15. (quit)
  16. )))

  17. (COMMAND "UNDO" "MARK")
  18. (command "ucs" "w" )
  19. (setvar "texteval" 1)(setq oldos (getvar "osmode"))
  20. (setvar "osmode" 0)

  21. (setq startpts (getpoint "输入起点位置:"))
  22. (print)
  23. (if (= nil startpts);start2
  24. (setq startpts (cdr (assoc 10 (entget (ssname ss 0)))))
  25. );end2

  26. (setq th (cdr (assoc 40 (entget (ssname ss 0)) )))
  27. (setq startpts (list (car startpts) (- (car (cdr startpts)) (/ th 2))))
  28. (if (= nil r )(setq r 0.67) (setq r (/ r (cdr (assoc 40 (entget (ssname ss 0)))) )))
  29. (setq rr (getreal (strcat "输入行间距与字高的比例<" (rtos r 2 2) ">:")))
  30. (if (/= nil rr)(setq r rr))
  31. (if (or (= nil r) (= r 0.67))
  32. (setq r (* 0.67 (cdr (assoc 40 (entget (ssname ss 0)))) ))
  33. (setq r (* r (cdr (assoc 40 (entget (ssname ss 0))))))
  34. )
  35. (setq l (sslength ss))
  36. (setq ii 0
  37.       ooo t
  38.       highy nil highent nil)
  39. (setq endss (ssadd))
  40. (repeat l
  41. (repeat l
  42. (if (ssname ss ii)
  43.     (setq en (ssname ss ii))(setq ooo Nil)
  44. )
  45. (if (ssname ss ii)
  46. (if (/= (cdr (assoc 0 (entget (ssname ss ii)))) "TEXT")
  47. (progn
  48. (alert " 所选实体中并非都是文字.ho-o! ")
  49. (quit)
  50. )))
  51. (if (and ooo (= (cdr (assoc 0 (entget (ssname ss ii)))) "TEXT"))
  52. (progn
  53. (setq pt1 (car (cdr(cdr (assoc 10 (entget en))))))

  54.    (if (> pt1 highy);start5
  55.    (progn;start6
  56.    (setq highy pt1)
  57.    (setq highent en)
  58.    ));end65
  59. ))
  60. (setq ii (1+ ii)
  61.       ooo t
  62.       )
  63. );end repeat1
  64. (setq ii 0 ooo t en nil)
  65. (ssdel highent ss)
  66. (ssadd highent endss)
  67. (setq highy nil highent nil)
  68. );end repeat2

  69. (setq i 0)
  70. (setq ll (sslength endss))
  71. (repeat ll
  72. (setq enn (ssname endss i))
  73. (setq pp2 (cdr (assoc 10 (entget enn))))
  74. (command "move" enn "" pp2 startpts)
  75. (setq startpts (list (car startpts) (- (car (cdr startpts)) th r)))
  76. (setq i (1+ i))
  77. );end3 1
  78. (command "ucs" "prev""")
  79. (setvar "osmode" oldos)
  80. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2002-8-31 08:58:00 | 显示全部楼层
請問這是什么功能?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-9-19 17:15:22 | 显示全部楼层
我要好好参考一下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-10-12 21:34:56 | 显示全部楼层
我也用用看
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-10-16 11:38:49 | 显示全部楼层
请问sz961此lisp程序的功能是什么,试用了一下只有第一步能用,以后cad就不认命令ts了,原因何在,请指教!谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-12-5 18:18:33 | 显示全部楼层
文字排版程式。对DTXT有用!文字对齐及行间距设定.对作表格很有用(如图纸目录)
lucy 你要把它保存成LISP文件.以后每次就可以调用了.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-17 19:43:48 | 显示全部楼层
试用一下,不知排版功能有多强?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-2-17 23:45:05 | 显示全部楼层
大家用过了,觉得如何
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-8-10 23:09:10 | 显示全部楼层
该命令ssget '((0 . "text"))可以只选择单行文本,其他图元均不选,版主可以采用并改进程序.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-8-12 19:18:28 | 显示全部楼层
我也要来呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 35个

财富等级: 招财进宝

发表于 2017-4-26 00:22:31 | 显示全部楼层
谢谢楼主,支持下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-4-27 15:57:06 来自手机 | 显示全部楼层
你好,能帮我这一个小程序吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-5-1 20:06:17 | 显示全部楼层
好东西
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 22:40 , Processed in 0.216016 second(s), 55 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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