【求教】如何批量修改天正字体

发新帖 回复

在处理建筑等其他专业条件图的时候,有时因为字体定义不一样,需要修改天正字体,目前只能一个个修改很是麻烦,使用lisp程序修改,只能修改ACAD的字体定义,天正的只能修改字体文件,无法修改“宽高比”“字宽方向”“字高方向”的参数,那位高手提供个可批量修改的lisp。或者天正里面集成个批量修改天正文字定义最好! 如图中的几个参数用lisp程序都无法修改:可修改的就字体文件

在处理建筑等其他专业条件图的时候,有时因为字体定义不一样,需要修改天正字体,目前只能一个个修改很是麻烦,使用lisp程序修改,只能修改ACAD的字体定义,天正的只能修改字体文件,无法修改“宽高比”“字宽方向”“字高方向”的参数,那位高手提供个可批量修改的lisp。或者天正里面集成个批量修改天正文字定义最好! 如图中的几个参数用lisp程序都无法修改:可修改的就字体文件
  • 收藏0

  • 打赏0

申明:内容来自用户上传,著作权归原作者所有,如涉及侵权问题,请与我们联系,我们将及时处理!

回复

分享至:

  • suqing
    suqing 2012年03月06日 13:42:36 2楼
    补充说明: 上图中的字体是水专业的,这个可以在设置中自定义,但是其他建筑,如建筑专业提供的图纸里面天正建筑定义的字体,就需要修改了,虽然建筑字体不多,一个个改也可以,但是还是希望提供一个批量修改程序,这样有一定的通用性! lisp程序不能修改的好像是上图中西文字体的两个参数:字高方向,字宽方向 [ 本帖最后由 suqing 于 2012-3-6 13:52 编辑 ]
    回复 0 举报
  • suqing
    suqing 2012年03月06日 14:22:03 3楼
    另外增加一点建议:就是当天正字体定义中西文字体参数“字高方向”“字宽方向:值均是1的时候,在另存T3版本的时候,天正的字体就不要分汉字和数字了。 因为这两个参数均是1的时候,说明用的是等高字体文件,汉字和数字就不用分开设置,就完全没有必要炸开成两部分。 另外就是在:选项--天正设置--标注文字设置 中设置如图一;但是天正字体样式定义中:西文参数中--“字宽方向”还是有个0.8的默认值,这个对于采用等高字体很不方便,不知道可否增加一个参数设置,使这个默认的0.8也可以设置成自己所需的值 [ 本帖最后由 suqing 于 2012-3-6 14:34 编辑 ]
    回复 0 举报
  • suqing
    suqing 2012年03月09日 09:15:15 4楼
    飞扬有看到吗?看到了给点意见啊!急用啊!
    回复 0 举报
  • 请勿飞扬
    请勿飞扬 2012年03月12日 09:54:23 5楼
    通过lisp “宽高比”可以修改。 “字宽方向”“字高方向”是天正文字的扩展包,你改不了。也没必要改
    回复 0 举报
  • suqing
    suqing 2012年04月01日 11:15:30 6楼
    如果选用“GBCBIG,GBENOR”这字体就必需改啊,不改字体很窄,不适合出图要求!飞扬老兄和试试!
    回复 0 举报
  • goofo61
    goofo61 2012年12月08日 11:52:13 7楼
    天正默认字体,最大的毛病就是中西文字高不同,如果能把某种合乎上述要求的字体作为天正的默认字体,估计很多人都不愿意再去折腾了,我平时用的探索者结构软件中的一个名为“TSSD”的字体作为标准字体,钢筋符号之类的都能正常显示。 如果不存在版权之类的问题,那最好是直接借用一下这一类的字体,或是把借用来把天正默认字体文件内核给改了。
    回复 0 举报
  • suqing
    suqing 2012年12月11日 09:47:44 8楼
    这个我也赞同,强烈要求采用等高字体,解决这个一直被忽视的问题。
    回复 0 举报
  • yangdynp
    yangdynp 2015年12月14日 10:07:49 9楼
    字体等高的问题需要解决,建议用Tssdeng+Hztxt。
    回复 0 举报
  • 波
    2015年12月15日 09:15:31 10楼
    (princ "\n命令:tx 改变字体文件!") (defun c:tx (/ acaddocument tstyle textitem textcont seltext i textsel texti) (vl-load-com) (setq acaddocument (vla-get-activedocument (vlax-get-acad-object))) (setq tstyle (vla-get-textstyles acaddocument)) (vla-add tstyle "CXB_txt") (setq textitem (vla-item tstyle "CXB_txt")) (vla-put-fontfile textitem "gbenor.shx") ;"romans.shx" (vla-put-bigfontfile textitem "GBCBIG.shx") ;"hztc2.shx" (vla-put-width textitem 1) (vla-put-height textitem 0.0) (prompt "\n点选需转换的字体:") (setq seltext (vlax-ename->vla-object (car (entsel)))) (setq selstyle (vla-get-stylename seltext)) (if (wcmatch selstyle "[@#]*") (progn (setq selstyle (strcat "[@#]" (substr selstyle 2))) ;;;(vla-put-stylename (vla-item tstyle (vla-get-stylename seltext)) selstyle ) )) (setq textsel (ssget "_x" (list (cons 0 "TEXT,ATTDEF") (cons 7 selstyle))) ) (setq i 0) (repeat (sslength textsel) (setq texti (vlax-ename->vla-object (ssname textsel i))) (vla-put-stylename texti "CXB_txt") (vla-put-scalefactor texti 1) ;;; (vla-put-height ;;; texti ;;; (* 100 (fix (/ (vla-get-height texti) 100))) ;;; ) ;;; (if (= (vla-get-height texti) 200) ;;; (vla-put-height texti 300) ;;; ) (setq i (1+ i)) ) ;;(vla-regen acadDocument acallViewports) (vla-regen acadDocument :vlax-true) (princ) )
    回复 0 举报
  • 已卸
    已卸 2016年08月13日 12:12:57 11楼
    回复 0 举报
评论 请使用文明语言进行专业交流,恶意灌水将受到惩罚

请先 登录,再评论!

加载更多资料