明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1209|回复: 4

[讨论] 表格,如果文字在居中

[复制链接]
发表于 2021-10-24 15:23:08 | 显示全部楼层 |阅读模式
本帖最后由 shcvip 于 2021-10-24 21:24 编辑

我改别人的程序,在自己的cad中,放大图框比例后,制作的出来的表格,文字不居中,不知道是那里问题,请教各位。
  1. ;;;http://huojibk.com/2021/01/604.html
  2. (defun C:tt (/ buz k pt kb cir WUS)
  3. ;;;  (defun C:ttb ()
  4.   (setq osm (getvar "osmode"))
  5.   (setvar "cmdecho" 0)                        ;0关闭回显
  6.   (setvar "osmode" 0)                        ;关闭捕捉
  7. (setq bili (getvar "dimscale"))
  8. ;文字位置调试数据
  9. (setq da1 (* 17 bili)
  10. da2 (* 39 bili)
  11. da3 (* (+ 56 7) bili)
  12. da4 (* 74 bili)
  13. da5 (* 95 bili)
  14. pt 0
  15. )
  16. ;数据格式
  17. (setq DB'(
  18.           ("H01-T01" "200.000" "200" "-995.555" )
  19.           ("H02" "D2" "0" "-5" )
  20.           ))
  21. ;;;(setq buz (getvar "osmode");捕捉
  22. (setq pt(getpoint "\n -->请指定程式表基点位置:"))
  23. ;;;(setvar "osmode" 0)
  24. (setq AX1(+(car pt) da1)
  25. AX2(+(car pt) da2)
  26. AX3(+(car pt) da3)
  27. AX4(+(car pt) da4)
  28. AX5(+(car pt) da5)   
  29. ;;; AX6(+(car pt) da6)
  30. ;;;AX7(-(cadr pt) 1)
  31.       AX7(-(cadr pt) 0)
  32. AX0 pt
  33. K 0
  34. )
  35. (setq AX0(list (car pt) (- (cadr pt) 0)))
  36. (setq da1(list AX1 AX7))
  37. (setq da2(list AX2 AX7))
  38. (setq da3(list AX3 AX7))
  39. ;固定的表头
  40. ;;;(command "_text" "j" "m" AX0 "3" "0" "序号")
  41.   (layer_w)
  42. (COMMAND "TEXT" "j" "m" AX0  0 "序号")
  43. ;;;  (COMMAND "TEXT" "j" "m" PT10 0 txt_name)
  44. ;;;(command "_text" "j" "m" da1 "3" "0" "刀号-刀补")
  45.   (COMMAND "TEXT" "j" "m" da1 0 "名称")
  46.   (COMMAND "TEXT" "j" "m" da2 0 "单位")
  47.   (COMMAND "TEXT" "j" "m" da3 0 "性能参数")
  48. (setq DB(reverse DB)
  49. bc (length DB));表长
  50. ;;;(while (> bc k)
  51. (setq kb(nth k DB))

  52. ;固定的表数据写对应的位置
  53. ;;;(command "_text" "j" "m" AX0 "3" "0" (+ k 1))

  54. ;;;  (COMMAND "TEXT" "j" "m" da1 0 "处理风量")

  55. ;;;(COMMAND "TEXT" "j" "m" AX0 0 "1")

  56. (csbzl)
  57. (textKU "1" AX0 AX0)
  58. (textKU "处理风量" da1 da1)
  59. (textKU "m\u+00b3/h" da2 da2)
  60. (textKU (strcat  (rtos FS_Q 2 2) "x"  "10\u+00b4" ) da3 da3)  
  61. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  62. (csbzl)
  63. (textKU "2" AX0 AX0)
  64.   (textKU "过滤面积" da1 da1)
  65.   (textKU "m\u+00b2" da2 da2)
  66.   (textKU (rtos s_bdn 2 0) da3 da3)
  67. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  68. (csbzl)
  69. (textKU "3" AX0 AX0)
  70.   (textKU "过滤风速" da1 da1)
  71.   (textKU "m/min" da2 da2)
  72.   (textKU (strcat  (rtos fv_g 2 2) "(离线:" (rtos fv_LXg 2 2) ")"  ) da3 da3)  
  73. ;;;(COMMAND "TEXT" "j" "m" AX0 0 "3")
  74. ;;;  (COMMAND "TEXT" "j" "m" da1 0 "过滤风速")
  75. ;;;  (COMMAND "TEXT" "j" "m" da2 0 "m/min")
  76. ;;;  (COMMAND "TEXT" "j" "m" da3 0   (strcat  (rtos fv_g 2 2) "(离线:" (rtos fv_LXg 2 2) ")"  ))
  77. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  78. (csbzl)
  79. (textKU "4" AX0 AX0)
  80.   (textKU "入口温度" da1 da1)
  81.   (textKU "%%dC" da2 da2)
  82.   (textKU "\U+2264X" da3 da3)
  83.    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  84. (csbzl)
  85.   (textKU "5" AX0 AX0)
  86.   (textKU "入口含尘浓度" da1 da1)
  87.   (textKU "g/Nm\u+00b3" da2 da2)
  88.   (textKU "X" da3 da3)
  89. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  90. (csbzl)
  91.   (textKU "6" AX0 AX0)
  92.   (textKU "出口含尘浓度" da1 da1)
  93.   (textKU "mg/Nm\u+00b3" da2 da2)
  94.   (textKU "\U+226410" da3 da3)
  95. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  96. (csbzl)
  97.   (textKU "7" AX0 AX0)
  98.   (textKU "滤袋规格" da1 da1)
  99.   (textKU "mm" da2 da2)
  100.   (textKU (strcat "%%c" (rtos BD_D 2 2) "x"  (rtos BD_L 2 2)) da3 da3)
  101.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  102. (csbzl)
  103.   (textKU "8" AX0 AX0)
  104.   (textKU "袋笼规格" da1 da1)
  105.   (textKU "mm" da2 da2)
  106.   (textKU (strcat (rtos (- BD_D 5) 2 2) "x"  (rtos (- BD_L 50) 2 2)) da3 da3)
  107.   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  108.    (csbzl)
  109.   (textKU "9" AX0 AX0)
  110.   (textKU "滤袋数量" da1 da1)
  111.   (textKU "条" da2 da2)
  112.   (textKU (rtos bd_N 2 2) da3 da3)
  113.     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  114.    (csbzl)
  115.   (textKU "10" AX0 AX0)
  116.   (textKU "滤袋材质" da1 da1)
  117.   ;;;  (COMMAND "TEXT" "j" "m" (get_midpt da2 da3)  0 "550g/m\u+00b2防静电涤纶针刺毡覆膜")
  118.   (textKU "550g/m\u+00b2防静电涤纶针刺毡覆膜" (get_midpt da2 da3) (get_midpt da2 da3))
  119.     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  120.    (csbzl)
  121.     (textKU "11" AX0 AX0)
  122.   (textKU "脉冲阀规格" da1 da1)
  123.   (textKU "X寸淹没式脉冲阀 DC24V" (get_midpt da2 da3) (get_midpt da2 da3))
  124. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  125. (csbzl)
  126.     (textKU "12" AX0 AX0)
  127.   (textKU "脉冲阀数量" da1 da1)
  128.   (textKU "个" da2 da2)
  129.   (textKU (rtos mcf_LXN 2 2) da3 da3)
  130. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  131. (csbzl)
  132.   (textKU "13" AX0 AX0)
  133.   (textKU "脉冲气源耗量" da1 da1)
  134.   (textKU "Nm\u+00b2/h" da2 da2)
  135.   (textKU "X" da3 da3)
  136. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  137.   (csbzl)
  138.   (textKU "14" AX0 AX0)
  139.   (textKU "脉冲气源压力" da1 da1)
  140.   (textKU "Mpa" da2 da2)
  141.   (textKU "0.4-0.6" da3 da3)   
  142. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  143.   (csbzl)
  144.   (textKU "15" AX0 AX0)
  145.   (textKU "喷吹气源压力" da1 da1)
  146.   (textKU "Mpa" da2 da2)
  147.   (textKU "0.25-0.35" da3 da3)
  148. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  149.     (csbzl)
  150.     (textKU "16" AX0 AX0)
  151.   (textKU "除尘器阻力" da1 da1)
  152.   (textKU "Pa" da2 da2)
  153.   (textKU "\U+22641500" da3 da3)
  154. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  155.       (csbzl)
  156.       (textKU "17" AX0 AX0)
  157.   (textKU "箱体耐压" da1 da1)
  158.   (textKU "Pa" da2 da2)
  159.   (textKU "-7000" da3 da3)
  160. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  161.   (csbzl)
  162.   (textKU "18" AX0 AX0)
  163.   (textKU "漏风率" da1 da1)
  164.   (textKU "%" da2 da2)
  165.   (textKU "\U+22642" da3 da3)
  166. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  167.   (csbzl)
  168.    (textKU "19" AX0 AX0)
  169.   (textKU "清灰机制" da1 da1)
  170.   (textKU "离线喷吹清灰" (get_midpt da2 da3) (get_midpt da2 da3))
  171. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  172.   (csbzl)
  173. (textKU "20" AX0 AX0)
  174.   (textKU "卸灰方式" da1 da1)
  175.   (textKU "星型卸灰阀→刮板机→" (get_midpt da2 da3) (get_midpt da2 da3))
  176. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  177.    
  178.    
  179. ;;;(setq K(+ k 1 ))
  180. ;;;  (setq K(+ k 0 ))
  181.   
  182. ;;;)
  183. (setq pzx (+(car pt ) (* (- 105 43) bili)  )
  184. pzy (+(cadr pt ) (* 2 bili))
  185. ptx (-(car pt )(* 5 bili))
  186. pty pzy
  187. )
  188. ;画行
  189. (repeat (+ bc 20)
  190. (setq cir(list
  191. '(0 . "LINE");直线
  192. ;;;'(62 . 0);颜色
  193. (cons 8 "x_细实线")
  194. ;;;'(6 . "ByBlock");线形
  195. (cons 10(list ptx pzy));起点
  196. (cons 11(list (+ pzx (* 12 bili)) pzy));终点
  197. ))
  198. (setq pzy( - pzy (* 6 bili)))
  199. (entmake cir);创建直线
  200. )
  201. (setq pzy( + pzy (* 6 bili)))
  202. ;列宽调试数据
  203. ;;;(setq da1 10
  204. ;;;da2 33
  205. ;;;da3 56
  206. ;;;da4 67
  207. ;;;da5 91
  208. ;;;da6 0
  209. ;;;k 0
  210. ;;;)
  211. (setq da1  (* 10 bili)
  212. da2 (* 33 bili)
  213. da3 (* 56 bili)
  214. da4 (* 79 bili)
  215. da5 (* 91 bili)
  216. da6 0
  217. k 0
  218. )

  219. ;纵向画线,画列
  220. (repeat 5
  221. (setq k(+ k 1))
  222. (setq cir(list
  223. '(0 . "LINE")
  224. (cons 8 "x_细实线")
  225. ;;;'(62 . 153)
  226. ;;;'(6 . "ByBlock")
  227. ;;;(cons 10(list (+ ptx da6) pty))
  228. (cons 10(list (+ ptx da6) pty))
  229. (cons 11(list (+ ptx da6) pzy))
  230. ))
  231. (entmake cir)
  232. (cond
  233. ((= k 1)(setq da6 da1))
  234. ((= k 2)(setq da6 da2))
  235. ((= k 3)(setq da6 da3))
  236. ((= k 4)(setq da6 da4))
  237. ((= k 5)(setq da6 da5))
  238. ((= k 6)(setq da6 110))
  239. ;((= k 7)(setq da6 120))
  240. )
  241. )
  242. ;;;(command "_ucs" "n" WUS);还原坐标
  243. ;;;(setvar "osmode" buz)
  244.   (setvar "osmode" osm)
  245. (princ)
  246. )

  247. (defun csbzl ()
  248. (setq AX0 (list (car AX0 ) (-(cadr AX0 ) (* 6 bili)) )
  249. da1(list (car da1) (-(cadr da1)(* 6 bili)))
  250. da2(list (car da2) (-(cadr da2)(* 6 bili)))
  251. da3(list (car da3) (-(cadr da3)(* 6 bili)))
  252.       )
  253.   (princ)
  254. )

  255. (defun get_midpt (pt1 pt2)                ;子程序中带有两个自变量
  256.   (setq mx (/ (+ (car pt1) (car pt2)) 2))
  257.   (setq my (/ (+ (cadr pt1) (cadr pt2)) 2))
  258.   (list mx my)
  259. )

  260. (defun textKU (txt_name pt1 pt2)
  261. (entmakex (list '(0 . "TEXT")
  262.                 (cons 1 txt_name);;内容
  263.                 (cons 7  "汉字")
  264.                 (cons 8  "W_文字层")
  265.                 (cons 67 0);颜色
  266.                 (cons 10 pt1);第一对齐点
  267.                 (cons 11 pt2) ;;第二对齐点,72或73不为0才有意义
  268.                 (cons 40 (* bili 4.2));;字高
  269.                 (cons 41  0.7) ;文字宽度
  270.                 (cons 72 4);;水平文字对齐类型
  271.                                               )
  272. )
  273. ;;;  (princ)
  274.   )

  275. ;;;---------------------
  276. ;;;《伙计百科》版权所有。
  277. ;;;源地址:http://huojibk.com/2021/01/604.html
  278. ;;;版权声明:转载请附上博文链接!





评分

参与人数 1明经币 +1 收起 理由
bssurvey + 1 赞一个!

查看全部评分

发表于 2021-10-24 18:56:29 | 显示全部楼层
一大堆command,没心情看奥
 楼主| 发表于 2021-10-24 21:24:43 | 显示全部楼层
烟盒迷唇 发表于 2021-10-24 18:56
一大堆command,没心情看奥

已经调整,不用command.
发表于 2021-10-24 21:27:34 | 显示全部楼层
把原代码发出来看看
 楼主| 发表于 2021-10-25 09:40:27 | 显示全部楼层
本帖最后由 shcvip 于 2021-10-25 09:41 编辑

在程序中,“;画行”  加入下面的程序,表格上移1mm,就可以解决了。(setq pty (+ pty bili ) pzy (+ pzy bili)) ;;2021.10.24.增加,表格一移1mm..
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-16 11:21 , Processed in 0.192046 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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