明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2056|回复: 5

[求助]为何处理文本的时候出现不同的结果

[复制链接]
发表于 2003-8-20 10:07:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2003-8-20 15:21:29 编辑

我的这个程序是我自己编制的一个针对pkpm图纸的后处理程序的一部分,但是出现很奇特的现象,单独处理一个文本或者文本不是很多(具体是可以处理多少我没有实测过)的时候,完全达到我的目的,但是文本较多的情况就达不到我的目的,也就是文字的字高、字型和对正方式都是按照我的意图实现了,但是文本却无法用“[”替换“%%130”,请教高手何故?谢谢!附代码如下:
(defun c:cc()
(setq bl0 (getreal"\n请输入字高的缩放比例(默认为1.2,建议不要修改此数字):"))
(if (= bl0 nil)
    (setq bl0 1.2)
  )
(command "-style" "new" "hsn,hztxt" "0" "0.7" "" "" "" "")        ;定义新字型
  (setq q (ssget "x" (list '(0 . "text"))))
  (setq n (sslength q))
  (setq nn (- n 1))
  (repeat n
    (setq zf nil)
    (setq ent (entget (ssname q nn)))
    (setq zf0 (cdr (assoc 1 ent)))
    (setq m (strlen zf0))
    (setq lj 1)
    (repeat m
      (setq a (substr zf0 lj 1))
      (setq b a)
      (cond
        ((= (ascii b) 130) (setq b "["))
        ((= (ascii b) 131) (setq b "]"))
      )
      (if (= lj 1)
        (setq zf b)
        (setq zf (strcat zf b))
      )
      (setq lj (+ lj 1))
    )
    (setq zg (* bl0 (cdr (assoc 40 ent)))) ;文本字高       
    (setq ent (subst (cons 7 "new") (assoc 7 ent) ent))
    (setq ent (subst (cons 41 0.7) (assoc 41 ent) ent))
    (setq ent (subst (cons 72 0) (assoc 72 ent) ent))
    (setq ent (subst (cons 40 zg) (assoc 40 ent) ent))
    (setq ent (subst (cons 1 zf) (assoc 1 ent) ent))
    (entmod ent)
    (setq nn (- nn 1))
  )
)
发表于 2003-8-20 10:25:00 | 显示全部楼层
给个能成功的字符串看看,最好给个能执行你的程序的图,而且你截取的程序段需能完整单独执行。这样比较好调试,且别人比较容易看懂你的意图,节约调试时间。
如果每次都要把整个别人的程序读懂了,再修改成能够执行,然后调试,这样就比较慢了。
 楼主| 发表于 2003-8-20 15:24:00 | 显示全部楼层
谢谢斑竹,我的这段程序是可以单独执行的,我将我的图片贴出来,请指教。

这个是pkpm的原始图,它的钢筋符号是ascii中的130、131,所以一般都是显示问号的。

本帖子中包含更多资源

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

x
 楼主| 发表于 2003-8-20 15:25:00 | 显示全部楼层
这个是处理少文本的时候,出现的结果是正确的,即可以按照我自己的字体显示钢筋等级的符号。

本帖子中包含更多资源

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

x
 楼主| 发表于 2003-8-20 15:27:00 | 显示全部楼层
这个是处理文本较多的时候出现的结果,显示是不正确的,

本帖子中包含更多资源

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

x
发表于 2003-8-20 18:01:00 | 显示全部楼层
为什么不肯传个图过来?
我这里调试没问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-15 17:54 , Processed in 0.194332 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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