QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 2361|回复: 1
收起左侧

[已答复] 用VBA新建一个块属性定义时,用什么参数设置块属性文字的宽高比

[复制链接]
发表于 2013-9-14 16:31:59 | 显示全部楼层 |阅读模式 来自: 中国江苏南京

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
本帖最后由 woaishuijia 于 2013-9-24 05:24 编辑 ) t3 C0 z4 p# a+ D

, K: d+ X1 n% h4 J" t% q求助,Set WORDS = ThisDrawing.ModelSpace.AddAttribute(H, acAttributeModeNormal, prompt, D, tag, value)
. C6 _4 s$ s% T5 D+ {用这个语句添加一个块属性时,发现添加上去的文字宽高比总是1,而不是当前文字样式中设置的值,求各位指导一下,谢谢
( O$ x- J+ R7 v9 ^4 e另外,添加的文字边界限定宽度怎么设置呢。如下图
2 p. d* H& k4 L7 Z. P: C QQ截图20130914163342.jpg
: w; y- |2 ], T$ [# i3 P
) m* w5 X2 Y. o9 J( z, I只有在选中 文字为 多行文字的时候才能设置限定宽度,这个设置在VBA中如何体现,用什么命令
: h8 l% |2 W+ }: D8 E
发表于 2013-9-24 05:34:18 | 显示全部楼层 来自: 中国吉林长春
本帖最后由 woaishuijia 于 2013-9-24 05:47 编辑 ! d: j& r' z3 a, ^  T( I; T3 u5 ]3 P

- U% ~1 p) }' Z4 N用 VBA 的"AddAttribute"方法添加块属性(单行文字)时,宽高比默认为1.可以在添加块属性后,用该属性对象的"ScaleFactor"属性修改宽高比.例如
  1. Dim B As AcadBlock, AAA As AcadAttribute, P(2) As Double; `1 j/ A( I' a- {- A5 C
  2. Set B = ThisDrawing.Blocks.Add(P, "MMM")
    8 u$ w# h+ s* L6 L
  3. Set AAA = B.AddAttribute(2.5, acAttributeModeNormal, "", P, "mm", "ffff"), L" k3 s, k3 u+ b. k6 o
  4. AAA.ScaleFactor = 0.6
    . o# f5 S9 Z" c
  5. ThisDrawing.ModelSpace.InsertBlock P, "MMM", 1, 1, 1, 0
复制代码
块属性(多行文字)的边界宽度用属性对象的"MTextBoundaryWidth"属性,例如
  1. Dim B As AcadBlock, AAA As AcadAttribute, P(2) As Double* a& @6 g, I$ U- s9 A4 Y6 [3 K
  2. Set B = ThisDrawing.Blocks.Add(P, "MMM")/ _  ^! Y" O' q) u. w/ [
  3. Set AAA = B.AddAttribute(2.5, acAttributeModeMultipleLine, "", P, "mm", "ffff")
    6 a; j; M/ v, v9 ~
  4. AAA.MTextBoundaryWidth = 100  {5 B& \4 J9 e0 O; ^- L0 A, `
  5. ThisDrawing.ModelSpace.InsertBlock P, "MMM", 1, 1, 1, 0
复制代码
或者
  1. Dim B As AcadBlock, AAA As AcadAttribute, P(2) As Double# P+ }) \* f- m. `7 K; D
  2. Set B = ThisDrawing.Blocks.Add(P, "MMM"). i! J! w8 m$ W* ]
  3. Set AAA = B.AddAttribute(2.5, acAttributeModeNormal, "", P, "mm", "ffff")1 y$ t, h8 N5 C/ e
  4. AAA.MTextAttribute = True" r  K" S) |: P) A+ o3 w- O
  5. AAA.MTextBoundaryWidth = 100* d1 D7 u2 e. _4 f1 p
  6. ThisDrawing.ModelSpace.InsertBlock P, "MMM", 1, 1, 1, 0
复制代码
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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