- UID
- 118401
- 积分
- 2157
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-3-28
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 Highflybird 于 2013-4-21 20:44 编辑
可能已经有这样的程序了。但要收费或要注册的,所以我发表了lisp程序在此,希望他们能谅解。这个程序没有什么技巧而言。经过测试,速度应该还可以。
有什么建议或者纰漏之处,请大家指出。
开源软件,转载请注明作者和来源!!!
说明:此程序用于繁体字和简体字的相互转化,可以用于AutoCAD 的字符。实际上简体字和繁体字并不是一一对应的,有时候可能一个简体字对应多个繁体字,而繁体字一般来说只对应一个简 体字。
程序中GB 码是指的的中国大陆的简体中文,GBK 码是指的的香港的繁体中文,BIG5是台湾的繁体中文。如果应用于CAD 图形 转换,文字中出现问号或者乱码,可能是由于没有相应字体的支持,请更换文字样式。譬如:ChineseSet.shx,gbcbig.shx.
另外首先确保你做了如下工作:(在winxp以上版本如win7,win8,可能需要管理员权限)
首先注册了插件,如果不会注册,我提供了注册程序。
然后用vlax-create-object 创建一个实例,用vlax-invoke调用其方法.
方法有: GB_GBK,GBK_GB,GB_BIG5,BIG5_GB,GBK_BIG5,BIG5_GBK等.
其功能顾名思义,如:GB_GBK就是把GB简体转化为GBK繁体。
程序还提供了可以用对话框形式的转化。
这个是对话框演示演示。
已经包含了32位和64位的版本,应该可以在CAD的各个版本上运行。
[pcode=lisp,true];;;=============================================================
;;; 功能:用对话框形式转化两岸三地的文字
;;;=============================================================
(defun C:DLG (/ dlg)
(setq dlg (vlax-create-object "CharConverter.Dialog"))
(if dlg
(progn
(vlax-invoke dlg 'doit)
(vlax-release-object dlg)
)
)
(princ)
)[/pcode]
在VBA里面可以这样用。
首先引用,然后就可以了。
[pcode=vb,true] Sub test()
Dim a As DialogTest
Set a = CreateObject("CharConverter.Dialog")
With a
.doit
End With
End Sub[/pcode]
如果不用DLL的话,可以用LISP,其核心代码:
[pcode=lisp,true];;;=============================================================
;;; 功能:简体字符串和繁体字符串互相转化(此程序为LISP,无需插件)
;;; 输入:字符串
;;; 输出:被转化后的字符串
;;;=============================================================
(defun Text:CharConvert (text IsRev / Index NewTxt Str From to)
(if IsRev
(setq From TraditionalCharset
To SimpleCharSet
)
(setq From SimpleCharSet
To TraditionalCharset
)
)
(setq NewTxt "")
(while (/= text "")
(setq str (substr text 1 1))
(if (> (ascii str) 128)
(progn
(setq str (substr text 1 2))
(setq text (substr text 3))
(if (setq index (VL-POSITION str From))
(setq str (nth index To))
)
)
(setq str (substr text 1 1)
text (substr text 2)
)
)
(setq newtxt (strcat newtxt str))
)
newtxt
)
[/pcode]
附件在此,包括了LISP程序和DLL程序以及测试样例。
=============================================
2013.04.21更新:现在可以提供对含文字的CAD图元操作,包括:
单行,多行文字,引线,属性,标注,公差,表格,块及其嵌套块。
LISP源码发行了三个版本,GB,GBK,BIG5,简体,繁体,台湾繁体版本
|
评分
-
参与人数 1 | D豆 +5 |
贡献 +3 |
收起
理由
|
炫翔
| + 5 |
+ 3 |
很给力!经验;技术要点;资料分享奖! |
查看全部评分
|