明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2929|回复: 8

[源码] [求助]如何使用vlisp创建一个"@widnwos字体“的文字样式?

[复制链接]
发表于 2010-4-16 10:39:00 | 显示全部楼层 |阅读模式

如何创建一个"@windows字体“的文字样式? 注意创建的文字样式中的字体要求是竖向的windows字体即带@号的。

起初我的想法是使用vla-put-fontfile函数设置文字样式的,结果出现如下问题。

(defun c:test ()
  (vl-load-com)
  (setq *acadobject* (vlax-get-acad-object))
  (setq *acaddocument* (vla-get-activedocument *acadobject*))
  (setq *mspace* (vla-get-modelspace *acaddocument*))
  (setq TextStyleSel (vla-get-TextStyles *acaddocument*))
  (setq newTextStyle (vla-add TextStyleSel "TestTextStyle"))

 
  1、(vla-put-fontfile newTextStyle "C:\\WINDOWS\\Fonts\\SIMHEI.TTF");通过测试但文字不是竖向的
  2、(vla-put-fontfile newTextStyle "C:\\WINDOWS\\Fonts\\@SIMHEI.TTF");字体名不存在,不能通过。

 
)

本帖子中包含更多资源

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

x
 楼主| 发表于 2010-4-16 10:45:00 | 显示全部楼层

上面的方法不行,于是我退而求其次,打算使用command去实现。

发现创建新的文字样式过程中要求输入完整的字体名,而完整的字体名不知道如何用程序去获取。

请问上面问题如何解决?

本帖子中包含更多资源

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

x
发表于 2010-4-16 13:37:00 | 显示全部楼层
发表于 2010-4-17 05:33:00 | 显示全部楼层
这个问题N年前就发现,好像宋体对应的是ttc文件,用vla函数和entmake我都试过,行不通
发表于 2010-4-19 08:04:00 | 显示全部楼层

(command "_.style" "aaa" "@細明體" "" "" "" "" "")

(command "_.style" "aa" "@宋體" "" "" "" "" "")

 楼主| 发表于 2010-4-19 09:47:00 | 显示全部楼层
您的方法对于大部份字体是可行的,但有一些字体的完整字体名与一般字体名并不一样,如上图的“楷体”,完整字体名是“楷体_GB2312”。
发表于 2010-4-20 07:55:00 | 显示全部楼层
(command "_.style" "aaa" "@楷体_GB2312" "" "" "" "" "")
 楼主| 发表于 2010-4-20 11:05:00 | 显示全部楼层
本帖最后由 作者 于 2010-4-20 14:12:28 编辑

龙龙仔发表于2010-4-20 7:55:00(command \"_.style\" \"aaa\" \"@楷体_GB2312\" \"\" \"\" \"\" \"\" \"\")

在不知道完整的字体名的情况下,就不能够使用这个方法了。

所以关键是如何用程序去获取完整的字体名。(并不是每一种字体与它的完整字体名都是统一规律的。)

举个实际例子,楷体的windows字库名为simkai.ttf,如何可以自动取得它的完整字体名“楷体_GB2312”呢?

发表于 2010-10-3 22:16:00 | 显示全部楼层

[求助] 我不需要@但却生成了@

我使用别人VB编的绘图程序,正常生成字体(比如楷体)都是不带@的,但有时他的程序会莫名生成带@字体都是横过来了。不知道是他程序问题还是windows问题。重启电脑有时问题能解决有时不行。很是奇怪。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-2 12:28 , Processed in 0.198341 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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