土木在线论坛 \ 建筑设计 \ CAD下载及教程 \ 请教高手一个文字对齐程序的问题

请教高手一个文字对齐程序的问题

发布于:2008-01-14 13:20:14 来自:建筑设计/CAD下载及教程 [复制转发]
我在网上下载了一个文字对齐程序,可是不好用,忘了是在哪里下载的了。

现在把程序贴出来,请大家看一下。


;|
命令:txt_align

功能:用于TEXT文字的排版
可以把选定的多行TEXT文字按照“左、中、右”对齐方式排版
程序去掉文字的前导和后缀空格,同时修改TEXT实体的对齐方式,
方便以后的文字编辑保持对齐方式。

程序配合XDRX_API build 20630+版本使用,朋友们可以把这个LISP拷贝到“晓东工具箱”的安装的
LISP目录,自己加入到菜单里面就可以非常方便的使用了。
关于程序的建议请到“晓东CAD空间-编程申请”论坛
http://www.xdcad.com/forum留言

|;
(defun c:txt_align (/ ss basept basept1 sel txt box tstyl intl p)
(prompt "\n请选取要排版的文字<退出>:")
(if (and
(setq ss (ssget ’((0 . "text"))))
(setq basept (getpoint "\n请拾取对齐位置点<退出>:"))
)
(progn
(xdrx_begin)
(xdrx_ucson)
(initget 128 "L R M")
(if (not (setq sel
(getkword
"\n对齐方式:[L -左对齐 / R -右对齐 / M -中心对齐]<L>:"
)
)
)
(setq sel "L")
)
(xdrx_setsstodb ss 0)
(while (setq e (xdrx_getentdata 0))
(setq txt (xdrx_getentdxf 1)
box (xdrx_entity_box e)
)
(setq basept1 (polar basept (/ pi 2) 100)
intl (inters
basept
basept1
(car box)
(cadr box)
nil
)
)
(setq txt (xdrx_string_trimLeft txt)
txt (xdrx_string_trimRight txt)
)
(cond
((= "L" sel)
(setq basept intl)
(xdrx_modent 1 txt 72 0 11 ’(0 0 0) 10 intl)
)
((= "R" sel)
(xdrx_modent 1 txt 11 intl 72 2)
)
((= "M" sel)
(xdrx_modent 1 txt 11 intl 72 4)
)
)
)
;|(initget 128)
(if (setq
p (xdrx_dragssmove
"\n如需调整位置, 请点取要移到的位置 <不调整>: "
ss
basept
3
T
)
)
(command ".move" ss "" basept p)
)|;
(xdrx_ucsoff)
(xdrx_end)
)
)
(princ)
)

问题是:
命令: txt_align
请选取要排版的文字<退出>:
选择对象: 找到 1 个
选择对象:
请拾取对齐位置点<退出>:; 错误: no function definition: XDRX_BEGIN
每次到这里就卡了
  • hoyoyo
    hoyoyo 沙发
    感謝樓主分享源碼程序,
    收下了!
    2008-02-22 18:22:22

    回复 举报
    赞同0
这个家伙什么也没有留下。。。

CAD下载及教程

返回版块

52.07 万条内容 · 656 人订阅

猜你喜欢

阅读下一篇

cad文字输出至word

软件简介: 可以将cad中的文字输入至word,尤其是将cad中的表格文字转为excell时,统计工作量事半功倍。 附件名:20081141200279686398.rar 文件大小:2K (升级VIP 如何赚取土木币)

回帖成功

经验值 +10