明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: lee50310

[源码] ***** 快速好用 自定 線型文字編輯器 *****

  [复制链接]
发表于 2020-12-15 15:37:02 | 显示全部楼层
不錯,收藏下來…
很方便使用
发表于 2020-12-15 20:58:34 | 显示全部楼层
感谢分享,非常的有用
发表于 2020-12-16 11:15:58 | 显示全部楼层
厉害厉害,学习一下
发表于 2020-12-17 07:36:01 | 显示全部楼层
好贴,占个坑学习下。
发表于 2020-12-19 12:52:00 | 显示全部楼层
持续关注,好用 !
发表于 2021-8-12 08:15:30 | 显示全部楼层
谢谢分享,厉害
发表于 2021-8-12 08:50:40 | 显示全部楼层
感谢分享好源码!
发表于 2021-8-13 17:52:26 | 显示全部楼层
楼主的程序挺好的,唯一的缺点就是线型中的文字不在线的起点和终点之间对中
可参考下这个,在论坛里的
;;示例(HH:InputBox "显示重量,便于拷贝" "重量显示" "5.3")
(defun HH:InputBox (promptstr title default)
  ;;(setq str (VL-PRIN1-TO-STRING default))
  (wscriptPublic (strcat "dim ret \n ret=InputBox(\""               promptstr
                         "\", \""            title               "\", \""
                         default            "\")"
                        )
  )
)
;;[功能] 创建带文字的线型
(defun c:makelt (/ EXPRT FILE FN SS STR)
  ;; 错误处理
  (defun *error* (msg)
    (vl-bt)
    (while (not (equal (getvar "cmdnames") "")) (command nil))
    (cond (exprt (setvar 'expert exprt)))
    (setvar "nomutt" 0)
    (princ "\n 出错啦!")
    (princ)
  )
  (setq exprt (getvar 'expert))
  ;;(setq str (getstring T "\n Enter string for linetype: "))
  (setvar "nomutt" 1)
  (cond        ((and (princ "\n 拾取或者输入线型文字")             
              (setq ss (ssget "_+.:E:S" '((0 . "TEXT"))))
         )         
         (setq str (cdr (assoc 1 (entget (ssname ss 0)))))         
        )
        (T         
         (while (equal (setq str (HH:InputBox "线型中有文字" "带文字线型" "电线")) ""))
        )
  )
  (setvar "nomutt" 0)
  (setq File (vl-filename-mktemp nil nil ".lin"))
  ;;(setq file (strcat (getvar 'dwgprefix) (vl-filename-base (getvar 'dwgname)) "_mylt.lin"))
  (setq fn (open file "w"))
  (setq exprt (getvar 'expert))
  (write-line (strcat "*" str ", ---" str "---") fn)
  (write-line (strcat "A,0.5,-0.05,[\""
                      str
                      "\",STANDARD,S=0.1,R=0.0,X=-0.0,Y=-.05],"
                      (rtos (* -0.1 (strlen str)) 2 3)
              )
              fn
  )
  (close fn)
  (setvar 'expert 5)
  (command ".-linetype" "load" "*" file "")
  (setvar 'expert exprt)
  (vl-file-delete file);这句好象没有什么用处
  (princ))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-27 10:22 , Processed in 0.141931 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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