乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 95|回复: 10

[编程交流] 自动加载样式设置代码

[复制链接]

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:23:12 | 显示全部楼层 |阅读模式
大家好
对于以下代码。
  1.         (if (= (tblsearch "style" "standard") nil)
  2.         (command "_.-style" "standard" "Arial" 3.5 0.666 0.0 "" "" "")
  3.         (command "_.-style" "standard" "Arial" 3.5 0.666 0.0 "" "" "")
  4. )

 
如果我在命令行中键入它们。一切顺利
但是当我将它们保存在lsp文件中,然后使cad自动加载该文件时。帮助文件总是跳出。我发现在输出日志中
执行“帮助”。这让我很困惑。有人能帮我吗?谢谢
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:31:42 | 显示全部楼层
 
 
 
 
在同一个命令上显示两种样式。Standard已在图形中,是已安装的ACAD字体的名称,不应用作其他样式的名称。叫他们别的什么,只是不要叫他们吃饭迟到。Arial是一种true type字体(TTF),它不需要命令中的最后一个“”。您确实不应该在字体样式中指定高度,否则所有宋体文本都将被限制在该高度。当你写一些需要文本的东西时,你可以设置它,但这取决于你。你的选择。
 
这是TTF类型字体的格式。
 
  1. (if (null (tblsearch "style" "MyFont1"))
  2.    (command "._STYLE" "MyFont1" "arial.TTF" "0.0" "1.0" "0.0" "_N" "_N" ))

 
 
以下是SHX类型字体的格式。
 
  1. (if (null (tblsearch "style" "MyFont2"))
  2.    (command "._STYLE" "MyFont2" "romans.shx" "0.0" "1.0" "0.0" "_N" "_N" ""))

 
 
注意两者之间的细微差别。
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:39:34 | 显示全部楼层
非常感谢。
深入了解更多。我找到了中文字体。应该是这样的。
  1.   (defun build_style(/)
  2. (if (= (tblsearch "style" "标准") nil)
  3.         (command "_.style" "标准" "楷体_GB2312" "0.0" "0.666" "0.0" "_N" "_N")
  4.         (command "_.style" "标准" "楷体_GB2312" "0.0" "0.666" "0.0" "_N" "_N")
  5. )
  6. )

 
不应添加“.TTF”。或将给出搜索字体错误。
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:43:12 | 显示全部楼层
 
这是另外一回事。我不确定这将如何工作,但它们肯定不是TTF字体。你为什么需要这个中文版本?
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:48:01 | 显示全部楼层
如果您使用的是中文版的ACAD,我会查看您选择的中文字体的文件扩展名是多少。
除此之外,我不能给你一个更好的答案,除非论坛上的另一个用户使用类似的东西。
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 10:56:14 | 显示全部楼层
我来自中国,实际上我正在为cad写一个工具,使我的工作更方便。但我只是个初学者。这么多
麻烦战胜了我眨眼:
 
类似于这些代码。我昨天跑得很好。但现在它失败了。cad给出错误:无函数定义:VLAX-ENAME->VLA-OBJECT
我在谷歌上搜索它。它说我应该添加“vl load com”,我已经这样做了。但一切都没有改变。错误仍在继续。
@buzzard,你知道这件事吗?谢谢
 
  1. (defun c:drawing_retangle_for_text(/)
  2. vl-load-com
  3. (setq dd 0.5)
  4. (print "\nplease choose the texts.")
  5. ;(setvar "osmode" 0)
  6. (setq ss (ssget))
  7. (setq i 0)
  8. (repeat (sslength ss)
  9.         (setq ssn (ssname ss i))
  10.         (setq ssdata (entget ssn))
  11.         (setq key (cdr (assoc 0 ssdata)))
  12.         (if (= key "MTEXT")
  13.         ;then
  14.                 (progn
  15.                         (vla-GetBoundingBox (vlax-ename->vla-object ssn) 'obj1 'obj2)
  16.                         ;(setq p1 (vlax-safearray->list (vlax-variant-value obj1)))
  17.                         ;(setq p3 (vlax-safearray->list (vlax-variant-value obj2)))
  18.                         (setq p1 (safearray-value obj1))
  19.                         (setq p3 (safearray-value obj2))
  20.                         ;(print "hi")
  21.                         (command "_.rectangle" p1 p3 "")
  22.                         ;(print "hi")
  23.                         (setq ee (entlast))
  24.                         (command "_.offset" dd (list ee p1) (polar p3 (/ pi 2) dd) "")
  25.                         (entdel ee)
  26.                 )
  27.         )
  28. )
  29. ;(command "ucs" "")
  30. (princ)
  31. )
回复

使用道具 举报

22

主题

100

帖子

78

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2022-7-6 11:04:36 | 显示全部楼层
好的,我找到了原因。这是我的错。
应该是这样的
  1. (vl-load-com)
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:06:16 | 显示全部楼层
好啊
 
我在帮助部分找到了这个。
 
备用字体变量FONTALT
 
指定在AutoCAD找不到原始字体且字体映射文件中未指定替代字体时要使用的字体文件的位置。也可以使用FONTALT系统变量设置备用字体文件的位置。
如果未通过“选项”对话框或FONTALT系统变量指定替代字体,则当打开包含AutoCAD无法定位的字体的图形时,将显示一个类似的对话框,从中可以为每个缺少的字体指定要使用的字体。
字体名称
列出AutoCAD fonts文件夹中所有注册TrueType字体和所有AutoCAD SHX字体的字体族名称。从列表中选择名称时,AutoCAD将读取指定字体的文件。
字体样式
指定字体字符格式,例如斜体、粗体或常规。如果缺少的字体是大字体,此选项将更改为大字体,并列出所有可用的亚洲语言大字体文件。
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:15:55 | 显示全部楼层
 
我想应该就这样了。我不知道你正在使用VL代码,因为它没有被提及。祝你好运
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 11:23:13 | 显示全部楼层
我猜这与这条线索有关:
 
http://www.cadtutor.net/forum/showthread.php?52968-绘制文本矩形
 
也许也可以看看这里:
 
http://www.cadtutor.net/forum/showthread.php?52031-文本的起点和终点&p=352471&viewfull=1#post352471
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 21:41 , Processed in 1.741430 second(s), 83 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表