明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3786|回复: 11

如何实现输入汉字?

  [复制链接]
发表于 2003-12-3 15:57:00 | 显示全部楼层 |阅读模式
为什么在VB中编写的程序在AutoCAD中显示的汉字全部为????
请高手帮忙写个函数来解决这个问题,并能实现字体,大小的改变.
不胜感激!
发表于 2003-12-3 19:03:00 | 显示全部楼层
汉字显示为?号,是因为文字所使用的字体不支持中文的,将它转化成中文字体就行了。
字体一般是通过文字样式的设置,字高可以使用它的属生Height来更改。
发表于 2003-12-3 21:36:00 | 显示全部楼层
只要在AutoCAD的fonts目录下放入中文字体就行了
 楼主| 发表于 2003-12-27 19:05:00 | 显示全部楼层
一对废话,我要的是代码!!!!!!!!!!!!
发表于 2003-12-27 19:19:00 | 显示全部楼层
Dim Styleobj As AcadTextStyle             '汉字字体集合
        Set AcadDoc = acadApp.ActiveDocument
        Set MoSpace = AcadDoc.ModelSpace
        Set paSpace = AcadDoc.PaperSpace
        acadApp.Visible = acTrue
        Set Styleobj = AcadDoc.TextStyles.Add("黑体")
        Styleobj.fontFile = "c:\windows\fonts\simhei.ttf"
        Set Styleobj = AcadDoc.TextStyles.Add("仿宋")
        Styleobj.fontFile = "c:\windows\fonts\simfang.ttf"
        Set Styleobj = AcadDoc.TextStyles.Add("楷体")
        Styleobj.fontFile = "c:\windows\fonts\simkai.ttf"
。。。。。。。

AcadDoc.ActiveTextStyle = AcadDoc.TextStyles.Add("黑体")
设置为当前字体后开始写文字!

不知能不能满足你的要求?试试!
发表于 2003-12-27 19:35:00 | 显示全部楼层
whyer发表于2003-12-27 19:05:00一对废话,我要的是代码!!!!!!!!!!!!



晕,提要求还这么不客气。
发表于 2003-12-27 19:42:00 | 显示全部楼层
都是这个贴子惹的祸,呵呵...
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=14105&star=1&skin=0
发表于 2003-12-27 20:31:00 | 显示全部楼层
whyer发表于2003-12-3 15:57:00如何实现输入汉字?
为什么在VB中编写的程序在AutoCAD中显示的汉字全部为????
请高手帮忙写个函数来解决这个问题,并能实现字体,大小的改变.
不胜感激!


把你的代码发上来,看看是不是你哪里写错了!!
发表于 2003-12-28 15:32:00 | 显示全部楼层
Sub textfont()
Dim typeface As String
Dim textbold As Boolean
Dim textitalic As Boolean
Dim textcharset As Long
Dim textpfamily As Long
ThisDrawing.ActiveTextStyle.GetFont typeface, _
textbold, textitalic, textcharset, textpfamily
MsgBox "当前字体为:" & typeface
typeface = "隶书"  '在此设置字体!!!!!!!!!
ThisDrawing.ActiveTextStyle.SetFont typeface, _
textbold, textitalic, textcharset, textpfamily
ThisDrawing.Regen acActiveViewport
Dim textobj As AcadText
Dim textstring As String
Dim textheight As Double
Dim inspoint(0 To 2) As Double
textstring = "关章洋"
inspoint(0) = 10
inspoint(1) = 10
inspoint(2) = 0
textheight = 5
Set textobj = ThisDrawing.ModelSpace.AddText(textstring, inspoint, textheight)
ThisDrawing.Application.ZoomExtents
End Sub
发表于 2003-12-28 16:55:00 | 显示全部楼层
对这么不礼貌的家伙还如此耐心,佩服!佩服!虽然大家是朋友用不着“跪求”但别人付出了劳动,起码的尊重我想还是应该的吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-28 04:39 , Processed in 0.201130 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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