VML 对象模型参考

本主题介绍 VML,该功能已弃用到 Windows Internet Explorer 9。 依赖 VML 的网页和应用程序应迁移到 SVG 或其他广受支持的标准。

注意

截至 2011 年 12 月,本主题已存档。 因此,它不再积极维护。 有关详细信息,请参阅 存档内容。 有关当前版本的 Windows Internet Explorer 的信息、建议和指南,请参阅 Internet Explorer 开发人员中心

在本主题中:

介绍

矢量标记语言(VML) 是一种基于文本的语言,它使用 XML 来扩展 HTML,以便显示矢量图形信息。 VML 文档对象模型 (DOM) 定义用于作文档元素的编程接口。 这使用户能够通过平台和语言中性界面动态创建和修改矢量图形。 VML DOM 符合 文档对象模型 规范。

VML 使用 Shape 元素作为矢量图形图像的基本构建基块。 创建形状后,可以通过属性或通过附加的子元素修改形状。 例如,若要更改形状的颜色,请将颜色值分配给 FillColor 属性。

myshape.fillcolor = "red"

形状的多个属性也 子元素,并具有自己的属性,包括以下内容:

VML OM 使用多个 数据类型 来定义参数。 前缀为“Vg”的数据类型是枚举,前缀为“IVg”的数据类型是对象。 单击此处获取列表。 次要数据类型以特定参数列出。

以下 VBScript 代码演示如何创建简单形状:

        Set MyRect = Document.CreateElement("v:Rect")
        Set R = MyDiv.AppendChild(MyRect)
        R.Style.Position = "absolute"
        R.Style.Width = 20
        R.Style.Height = 20
        R.Style.Top = 50
        R.Style.Left = 50
        R.FillColor = "red"

在上面的示例中,使用 Document 对象模型方法创建形状 CreateElement。 该形状是 VML 预定义的 Rect 形状。 即使对象存在,它也不能是文档的一部分,直到它附加到文档。 使用 AppendChild 方法,Rect 成为名为 MyDiv 的 DIV 元素的子级。 一些最小样式属性(PositionWidthHeightTopLeft) 设置为为形状指定特定大小。 最后,使用 FillColor 属性分配颜色。 请注意,可以使用任何脚本语言或可用于文档对象模型接口的任何语言。

设置 VML

VML 的一个实现是通过 internet Explorer 5.0 或更高版本Microsoft实现。 若要在网页中正确设置呈现对象,必须进行以下添加:

  1. 架构必须在初始 <HTML> 标记中设置,如下所示:

    <HTML xmlns:v="urn:schemas-microsoft-com:vml">
    
  2. 呈现行为必须是文档样式的一部分:

    <STYLE>
    v\:* { behavior: url(#default#VML); display:inline-block}
    </STYLE>
    

下面显示了为 VML 正确设置的示例 HTML 网页,其中显示了形状的动态创建。

<HTML xmlns:v="urn:schemas-microsoft-com:vml">
<HEAD>
<STYLE>
v\:* { behavior: url(#default#VML); display:inline-block}
</STYLE>
<TITLE>VML Sample</TITLE>
</HEAD>
<BODY>
<DIV id="MyDiv"></DIV>
<SCRIPT ID="MYSCRIPT" LANGUAGE="VBScript">
<!--
Set MyRect = Document.CreateElement("v:Rect")
Set R = MyDiv.AppendChild(MyRect)
R.Style.Position = "absolute"
R.Style.Width = 20
R.Style.Height = 20
R.Style.Top = 50
R.Style.Left = 50
R.FillColor = "red"
-->
</SCRIPT>
</BODY>
</HTML>

请注意,在 beta 版本中,需要 ActiveX 对象标记和不同的行为样式。

VML OM 参考

此引用定义 Shape 元素、子元素,以及 VML 对象模型使用的 数据类型。

Shape 元素

形状是由矢量标记语言(VML)定义的图形图像的构建基块。 该形状是顶级元素,多个子元素有助于定义每个形状的性质。

VML 提供预定义的形状:

形状属性

  • Arc
  • 曲线
  • 折线
  • Rect
  • RoundRect
子元素 描述
Adj IVgAdjustments. 以逗号分隔的数字列表,这些数字是定义形状路径的参考公式的参数。 可以省略值以允许使用默认值。 最多可以有 8 个调整值。
Alt 字符串。 与形状关联的可选文本。 用于非图形浏览。
按钮 VgTriState。 单击时显示按钮行为。
BWMode VgBlackWhiteMode。 确定形状如何在应用中呈现黑白视图,或打印到黑白打印机时。 值包括:ColorAutoGrayScaleLightGrayScaleInverseGrayGrayOutlineBlackTextAndLinesHighContrastBlackWhiteUndrawn。 默认值:自动
BWNormal VgBlackWhiteMode。 当 BWMode 为“自动”时,将咨询此属性,了解如何以普通黑白形式呈现形状。 值包括:ColorAutoGrayScaleLightGrayScaleInverseGrayGrayOutlineBlackTextAndLinesHighContrastBlackWhiteUndrawn。 默认值:自动
BWPure VgBlackWhiteMode。 当 BWMode 为“自动”时,会查阅此属性,了解如何以纯 B/W 呈现形状。 值包括:ColorAutoGrayScaleLightGrayScaleInverseGrayGrayOutlineBlackTextAndLinesHighContrastBlackWhiteUndrawn。 默认值:自动
ChildShapes IVgGroupShapes。 此组中其他形状的集合。 此集合支持标准 Length 和 Item 方法。
Chromakey IVgColor。 一个颜色值,它将透明,并显示形状后面的任何内容。
Control1 Vector2D。 曲线的控制点。
Control2 Vector2D。 曲线的控制点。
CoordOrigin Vector2D 容器矩形左上角的坐标。 范围为 0 到无穷大。
CoordSize Vector2D。 此形状的引用矩形内的坐标空间的宽度和高度。 如果未指定,则它与矩形的宽度和高度相同。 范围为 0 到无穷大。 默认值:“1000,1000”。
EndAngle VgAngleInDegrees。 形状的结束角度。
挤压 IVgExtrusion。 指定此形状的延伸对象值。 有关详细信息,请参阅 延伸 元素。
填补 VgFillFormat。 指定此形状的填充值。 有关更多详细信息,请参阅 Fill 元素。
FillColor IVgColor。 用于填充此形状的路径的画笔的主要颜色。
VgTriState。 如果为 True,则定义形状的路径将被填充。 默认情况下,除非有一个指定更复杂的填充属性的 Fill 子元素,否则它将使用纯色填充。 如果为 False,则填充为透明。
空翻 VgFlipOrientation。 值为:X Y XY YX
ForceDash VgTriState。 指示当没有线条且没有形状填充时,应呈现虚线轮廓。 此行为通常可用于使在编辑应用程序中可见的不可见形状,以便可以选择和作它们,例如在图像地图中。
公式 IVgFormulas。 定义形状的公式数组。
Vector2D。 起点。
HRef 字符串。 单击此形状时要跳转到的 URL。
ImageData IVgImageData。 如果形状是图片,则图像信息。 有关详细信息,请参阅 ImageData 元素。
OnEd VgTriState。 隐藏除左上角和右下角以外的所有句柄,如直线线段的控点所示。
不透明度 VgFraction。 整个形状的不透明度。 介于 0.0 和 1.0 之间的数字。
路径 IVgPath。 包含定义路径的命令的字符串。
IVgPoints。 定义形状的点集合。
打印 VgTriState。 如果为 True,则此形状应打印。
旋转 VgAngleInDegrees。 设置形状的旋转。 值传播到形状样式。
规模 Vector2D。 形状的刻度。
影子 IVgShadow。 指定此形状的阴影。 有关详细信息,请参阅 阴影 元素。
Spt 保留。
StartAngle VgAngleInDegrees。 形状的起始角度。
中风 VgStrokeFormat。 有关详细信息,请参阅 Stroke 元素。
StrokeColor IVgColor。 用于绘制此形状路径的画笔的主要颜色。
抚摸 VgTriState。 如果为 True,则定义形状的路径将被笔划。
StrokeWeight VGLength。 用于绘制路径的画笔的宽度。 介于 0 和 1584 之间。
TextPath IVgTextPath。 指定形状的 TextPath 对象。 有关详细信息,请参阅 TextPath 元素。
Vector2D。 线条的终点。
类型 字符串。 形状的类型。

Shape 元素的子元素

以下子元素是 VML 对象模型的一部分。

Background 元素

使用 VML 填充描述页面背景的填充。

属性 描述
BWMode VgBlackWhiteMode。 确定形状如何在应用程序中或在打印时以黑白视图呈现。
BWNormal VgBlackWhiteMode。 当 BWMode 为“自动”时,将咨询此属性,了解如何以普通黑白形式呈现形状。
BWPure VgBlackWhiteMode。 当 BWMode 为 Auto 时,会咨询此属性,了解如何以纯黑色和白色呈现形状。
填补 VgFillFormat。 指定此形状的填充。 有关详细信息,请参阅 Fill 元素。
FillColor IVgColor。 用于填充此形状的路径的画笔的主要颜色。 Fill 元素中 Color 值的副本。 默认值为白色。

延伸元素

描述形状的三维延伸。

属性

AutoRotationCenter VgTriState。 如果为 True,则三维对象组的旋转中心(实际上组中只有一个对象)自动确定为组的中心;否则,它由 RotationCenter 参数确定,该参数是形状的一小部分,其中 0,0,0 是中心。
BackDepth VgLength。 向后延伸量。 范围为 0 到 32767。
亮度 VgPositiveNumber。 场景的整体亮度。 默认值为“20,000”。
颜色 IVgColor。 延伸的颜色。 仅当 ColorMode 为自定义时使用。 否则,自动将延伸效果颜色设置为与 FillColor 相同的颜色。
ColorMode Vg3DColorMode。 值为:
  • 自动 (默认值)
  • 习惯
差异 VgPositiveNumber。 事件与漫射反射光的比例。 小于 1.0 的值是正常的,但高于一个的值可能会产生有趣的效果。
边缘 VgLength. 设置模拟圆角边缘的大小。 浮点 pts 中的范围为 0 到 32767。 默认值为“1pt”。
方面 VgPositiveNumber。 设置场景的方面。 默认值为“30,000”。
ForeDepth VgLength. 向前延伸量。 范围为 0 到 32767。
LightFace VgTriState。 阻止对象正面是否会响应三维照明的变化,例如当对象旋转时。
LightHarsh VgTriState。 主要光源的恶劣照明。 默认值为 False。
LightHarsh2 VgTriState。 辅助光源的恶劣照明。 默认值为 False。
LightLevel VgNumber。 主要光源的强度。 默认值为“38000”。
LightLevel2 VgNumber。 辅助光源的强度。 默认值为“38000”。
LightPosition Vector3D。 主光源的位置。 默认值为“50000,0,10000”。
LightPosition2 Vector3D。 辅助光源的位置。 默认值为“-50000,0,10000”。
LockRotationCenter VgTriState。 “Lockrotationcenter”表示组的旋转定义为页面上 y 轴的旋转角度[1] 度,后跟 x 轴的旋转角度[0] 度。 LockRotationCenter 为 False 时,旋转定义为方向角度度,以方向定义的向量。 例如,lockrotationcenter=false orientationangle=45 orientation=(0,1,0) 等效于 lockrotationcenter=true rotationangle=(0,45)。
金属 VgTriState。 使反射光成为材料颜色而不是光源颜色,使对象看起来更金属。
VgTriState。 打开和关闭延伸效果的显示。
取向 Vector3D。 相机的方向。
OrientationAngle VgAngleInDegrees。 相机方向与 xy 平面之间的角度。
飞机 Vg3DExtrudePlane。 允许从平面正交到屏幕平面的延伸。 要求在绘图单位而不是 emus 中指定 ForeDepth 和 BackDepth。 值为:
  • XY
  • ZX
  • YZ
呈现 Vg3DRenderMode。 值为:
  • 实心 (默认值)
  • WireFrame
  • BoundingCube
RotationAngle Vector2D。 AngleX、AngleY 或 AngleZ 由 ShapeRotation 属性控制。
RotationCenter Vector3D。 旋转中心。
Shininess VgPositiveNumber。 确定反射的集中或分散程度。 高值将是 8 到 10,将近似于镜子,而低值将是 2 到 3,将近似亮片服装。 建议值为 3 到 7。 高值将反射精确到的光源。
SkewAmt VgPercentage。 如果 Type 为 Parallel,属性将确定倾斜量。 范围为 0 到 100。
SkewAngle VgAngleInDegrees。 如果 Type 为 Parallel,则特性确定倾斜程度。 默认值为“-45”。
反射性 VgPositiveNumber。 事件与反射光的比例。 小于 1.0 的值是正常的,但高于一个的值可能会产生有趣的效果。
类型 VgExtrusionType。 值为:
  • 并行(默认值)
  • 透视
观点 Vector3D。 从中查看场景的点。
ViewpointOrigin Vector2D。 可以将值从 0.5 到 -0.5 放置在形状边界框中的视点的原点。

Fill 元素

描述应如何填充填充比纯色更复杂的填充路径。

属性

AlignShape VgTriState。 将图像与形状对齐。 如果为 False,则与窗口对齐图像。
角度 VgAngleInDegrees。 渐变沿的角度。 0 度沿水平轴从左到右。
方面 VgAspectType。 ImageSize 属性将进行调整,以保留图像的方面。 值包括:
价值 描述
忽视 忽略方面问题。
AtLeast 图像大小至少与图像大小一样大。
AtMost 图像不大于图像大小。

颜色 IVgColor 主填充颜色。 与形状中的 FillColor 属性相同。
Color2 IVgColor。 图像类型为图案或渐变填充时填充的次要颜色。
颜色 IVgGradientColorArray。 渐变中的中间颜色及其相对位置沿渐变,例如“30% 红色,70% 蓝色,90% 绿色”。 主要颜色(形状中的颜色属性)为 0%,辅助颜色(Color2 属性)为 100%。
重点 VgSignedPercentage。 线性渐变填充的焦点。 值从 -100 到 +100。
FocusPosition Vector2D。 径向渐变的最内侧矩形的位置。 矢量是形状宽度和高度的分数(0.0 - 1.0)。
FocusSize 矢量 2D 径向渐变的最内部矩形的大小。 矢量是形状宽度和高度的分数(0.0 到 1.0)。
方法 VgSigmaType。 值包括:
  • 没有
  • 线性
  • 西格马
  • 任何

默认值为 Sigma。

VgTriState。 打开填充显示。 与形状中的 Fill 属性相同。
不透明度 VgFraction。 填充的不透明度。
Opacity2 VgFraction。 渐变的辅助不透明度。
起源 Vector2D。 相对于图像左上角的点,该图像被视为图像的原点。 默认值为映像的中心。 矢量是图像宽度和高度的分数(从 0.0 到 1.0)。
位置 Vector2D。 指向形状的引用矩形以定位图像的原点。 默认值为容器矩形的中心。 矢量是图像宽度和高度的分数(0.0 - 1.0)。
大小 Vector2D。 图像的大小。 默认值为图像的像素大小。 可以以绝对坐标或百分比指定。
Src 字符串。 要为图像和模式填充加载的图像的 URL。 此属性必须始终存在并指向要显示的图片的有效图像数据。
类型 VgFillType。 可以是以下类型之一:
  • 背景
  • 框架
  • 梯度
  • GradientCenter
  • GradientRadial
  • GradientTitle
  • GradientUnscaled
  • 模式
  • 固体
磁贴、模式和框架要求提供图像属性。 渐变和 GradientRadial 要求提供渐变属性。

Group 元素

组是单个形状的集合,可以定位和转换为一个单元。

属性 描述
项目 IVgShape。 形状数组中的指定项。
长度 整数。 此组中的形状数。

Imagedata 元素

描述要呈现在形状顶部的图片。

属性 描述
BiLevel VgTriState。 仅显示两种颜色(通常是黑白)的图片。
BlackLevel VgFraction。 允许调整以设置级别,使黑色显示为真正的黑色,所有其他颜色都显示为黑色上方的阴影。
Chromakey IVgColor。 图片的透明颜色。
CropBottom VgNumber。 裁剪图片底部的距离,表示为图片大小的百分比。
CropLeft VgNumber。 裁剪图片左边缘的距离,表示为图片大小的一小部分(从 0.0 到 1.0)。 但是,支持“裁剪外”,因此支持小于 0 且大于 1 的值;例如,-5,20 将裁剪图片大小的边界 25 倍,图片的一侧为 4/5。
CropRight VgNumber。 裁剪图片右侧的距离,表示为图片大小的百分比。
CropTop VgNumber。 裁剪图片顶部的距离,表示为图片大小的百分比。
EmbossColor IVgColor。 这设置为阴影颜色的百分比,以创建浮雕图片效果。
获得 VgPositiveNumber。 调整所有颜色的强度。 实质上是设置白色的明亮程度。 范围为 0 到 32767。
伽马 VgFraction。 伽玛更正。 增加它使图像更具对比度。
GrayScale VgTriState。 以灰度颜色显示图片。
Src 字符串。 要为图像和模式填充加载的图像的 URL。 此属性必须始终存在并指向要显示的图片的有效图像数据。

Path 元素

使用包含一组丰富的“笔移动”命令的字符串定义构成形状的路径。

豪华 轿车 IVgVector2D。 定义形状拉伸的点;例如,对于长颈鹿形状,豪华轿车点将位于颈部,因此当形状调整大小时,颈部将拉伸,其余形状将保持其尺寸。
TextBoxRect IVgFixedRectangleArray。 包含定义文本应到何处的矩形的数组。
V 字符串。 匹配 Path 标记上的 v 属性。 请注意,路径可能与 Path 属性或元素相对应。
价值 字符串。 定义路径的命令的文本表示形式。 X 或 y 坐标值可以是对格式为“@#”的公式的引用,其中 #是公式的序号,例如“@2”。 此属性字符串由一组丰富的命令组成,其中包括:
命令 描述
ae (angleellipseto) 中心(x,y)大小(w,h)起点端角度
绘制椭圆的段。 直线从当前点绘制到段的起点。
al (angleelipse) 与 ae 相同,不同之处在于段起点存在隐含 m。
ar (arc) 与 at 相同。 但是,新的子路径从一个隐含的 m 开始到弧线的起点开始。
at (arcto) 顶部底部开始(x,y)(x,y)
前四个值定义椭圆的边界框。 最后四个定义两个径向量。 绘制椭圆的一段,该段从开始半径向量定义的角度开始,以结束向量定义的角度结束。 直线从当前点绘制到弧线的起点。弧线始终以逆时针方向绘制。
c (曲线图) control1(x,y) control2(x,y) (x,y)
将立方贝塞尔曲线从当前点绘制到最后两个参数给出的坐标,即前四个参数给出的控制点。 当前点将成为贝塞尔的终结点。
e (结束) 结束当前子路径集。 使用 eofill 填充给定的一组子路径(以结束分隔)。 后续子路径集是独立填充的,并叠加在现有子路径上。
l (lineto) x,y
将一条线从当前点绘制到给定的 x,y 坐标,这将成为新的当前点。 可以指定其他坐标对来形成折线,例如“l 10,13,45,27,89,-12”。
m (moveto) x,y
在给定的 x,y 坐标处启动一个新的子路径。
nf (nofill) 当前子路径集(以结束分隔符)将不会填充。
ns (击中) 当前子路径集(以结束分隔)不会进行笔划。
qb (二次比齐尔) 控制点(x,y)*,(x,y)
通过控制点和终结点定义一个或多个二次贝塞尔曲线。 中间(曲线上)点是通过连续控制点(类似于 TrueType 字体)之间的内插获取的。 子路径不需要是起点,在这种情况下,子路径已关闭,最后一个点定义起点。
qx (椭圆形quadrantx) 结束(x,y)
从当前点到给定终结点绘制四分之一椭圆。 椭圆线段最初与与 x 轴平行的线切线;即段从水平开始。
qy (椭圆形quadranty) 结束(x,y)
与 qx 相同,但椭圆线段最初与与 y 轴平行的线相切:即段从垂直开始。
r (rlineto) x,y
从当前点绘制到相对坐标(cpx + x,cpy + y)的线条。 如果提供了其他坐标对,则会相对于最后一个点计算每个新点。
t (rmoveto) x,y
在相对坐标(cpx + x、cpy + y)处启动一个新的子路径,其中 cpx、cpy 是当前位置。
v (曲线图) control1(x,y) control2(x,y) (x,y)
使用给定坐标相对于当前点的立方贝塞尔曲线。 所有点都相对于同一起点进行计算。
wa (顺时针) 与在顺时针方向绘制弧线相同。
wr (顺时针) 与 ar 相同,但按顺时针方向绘制。
x (关闭) 通过将直线从当前点绘制到原始 moveto 点来关闭当前子路径。

Shadow 元素

描述形状上的阴影效果。

颜色 IVgColor。 主阴影的颜色。 默认值为 RGB(128,128,128)
Color2 IVgColor。 第二个阴影的颜色,或在浮雕或雕刻的阴影中突出显示。 默认值为 RGB(203,203,203)。
矩阵 IvgSkewMatrix。 一个透视转换矩阵,格式为“sxx,sxy,syx,syy,px,py”[s=scale,p=perspective]。 s 项指定阴影相对于形状的缩放方式,p 项指定阴影应如何与形状倾斜。 例如,以下矩阵将形状的大小调整为 2,并按 4 向所有方向的 4 系数倾斜形状:
"2,2,2,2,4,4"
仅当阴影的类型设置为透视时,才使用此矩阵。
遮蔽 VgTriState。 如果形状上没有填充,则可以看到阴影。 默认值为 False。
抵消 IVgSkewOffset。 形状位置的 x,y 偏移量。 默认值为“2pt,2pt”。
Offset2 Vector2D。 形状位置的 x,y 秒偏移量。 值是绝对度量值,或者是形状的小数部分值(-0.5 到 +0.5)。
VgTriState。 打开和关闭阴影的显示。
不透明度 VgFraction。 阴影效果的不透明度。
起源 Vector2D 从 -0.5 到 +0.5 的形状的小数部分值对。
类型 VgShadowType。 值为:
  • 单一(默认值)
  • 透视
  • ShapeRelative
  • DrawingRelative
  • 浮雕

Skew 元素

描述对形状的透视倾斜效果。 倾斜应用于矢量图形数据,而不是图像数据。

属性 描述
矩阵 IVgSkewMatrix。 形式的透视转换矩阵,“sxx,sxy,syx,syy,px,py”[s=scale,p=perspective]。 如果偏移量为绝对单位,则 px,py 以 emu ^ -1 单位;否则,它们是形状大小的反比例。
抵消 IvgSkewOffset。 形状位置的 x,y 偏移量。 默认值为“2pt,2pt”。
VgTriState。 打开或关闭倾斜的显示。
起源 Vector2D。 形状的小数部分值从 -0.5 到 +0.5。

Stroke 元素

描述如果需要纯色线以外的内容,如何绘制路径。

颜色 VgTriState。 线条的颜色。 与 Shape 中的 StrokeColor 属性相同,但重写它。
Color2 IVgColor。 辅助颜色。 在 FillType 为 Pattern 时使用。
DashStyle VgLineDashStyle。 短划线样式格式。 可以是具有用户定义的短划线模式的特定值或数字序列。 值为:
  • 实心 (默认值)
  • ShortDash
  • ShortDot
  • ShortDashDot
  • ShortDashDotDot
  • 破折号
  • DashDot
  • LongDash
  • LongDashDot
  • LongDashDotDot
EndArrow VgArrowheadStyle。 线条末尾的箭头。 值为:
  • 无(默认值)
  • 经典
  • 钻石
  • 椭圆形
  • 打开
  • 山形袖章
  • DoubleChevron
EndArrowLength VgArrowHeadLength。 线条末尾的箭头长度。 值为:
  • 中等(默认值)
EndArrowWidth VgArrowheadWidth。 线条末尾的箭头宽度。 值为:
  • 中等(默认值)
EndCap VgLineEndCapStyle。 值为:
  • 广场
FillType VgLineFillType。 值为:
  • 实心 (默认值)
  • 模式
  • 框架
ImageAlignShape VgTriState。 将图像与形状对齐。 如果为 False,则与窗口对齐图像。
ImageAspect VgAspectType。 ImageSize 属性将进行调整,以保留图像的方面。 值包括:
价值 描述
忽视 忽略方面问题。
AtLeast 图像大小至少与图像大小一样大。
AtMost 图像不大于图像大小。

ImageSize Vector2D。 要构成画笔的图像的大小。 默认值为图像的大小。
JoinStyle VgLineJoinStyle。 值为:
  • 圆(圆合)
  • 棱台 (棱台关节)
  • Miter (miter 关节)
LineStyle VgLineStyle。 值为:
  • 瘦身 (1:1:1)
  • ThinThick (1:1:2)
  • 厚辛 (2:1:1)
  • ThickBetweenThin (1:1:2:1:1)
MiterLimit 长度。 关节内点和外点之间的最大距离。 此数字是线条粗细的倍数。 范围为 0 到 32,767。
VgTriState。 打开和关闭行的显示。 与 Shape 中的 Stroke 属性相同,但会重写它。
不透明度 VgFraction。 笔划的不透明度。
Src 字符串。 要为图像和模式填充加载的图像的 URL。 此属性必须始终存在并指向要显示的图片的有效图像数据。
StartArrow VgArrowheadStyle。 线条开头的箭头。 值为:
  • 无(默认值)
  • 经典
  • 钻石
  • 椭圆形
  • 打开
  • 山形袖章
  • DoubleChevron
StartArrowLength VgArrowHeadLength. 线条开头的箭头长度。 值为:
  • 中等(默认值)
StartArrowWidth VgArrowheadWidth. 线条开头的箭头宽度。 值为:
  • 窄中等(默认值) 宽
重量 VgLength. 线条宽度。 范围为 0 到 1584。

注意:
DashStyle 属性允许用户指定自定义定义的短划线模式。 这是使用一系列数字完成的。 短划线样式根据短划线的长度(笔划线的绘制部分)和短划线之间的间距来定义。 长度相对于线条宽度;长度为“1”等于线条宽度。 EndCap 样式应用于每个短划线,箭头样式不是。 字符串首先定义短划线的长度,然后定义空格的长度。 可能会重复此作以形成复杂的短划线样式。 字符串应始终包含一对数字;如果它包含奇数的数字,则可能会忽略最后一个数字。 下表列出了一些典型值和预期效果的说明。 “0”表示一个应为四倍对称的点(圆角应为圆圈)。 如果线条尾部为 Flat,则查看器应尽可能选择内置作系统短划线(即快速绘制的内容)。 下面显示了一些示例。

"2 2" 短划线(每条短划线和两者之间的空间是线条宽度的两倍)
"1 2" 点(每个短划线是行的宽度,而每个空格是线条宽度的两倍)
"4 2" 短划线(每条短划线是行宽的四倍,而每条空格是线条宽度的两倍)
"8 2" long-dash
"4 2 1 2" 短划线点
"8 2 1 2" 长划线点
"8 2 1 2 1 2" 长划线点

TextPath 元素

基于提供的文本数据、字体和样式描述向量路径。 如果提供,文本路径将扭曲为符合 Path 元素。

属性 描述
FitPath VgTriState。 调整文本的大小以填充其所在路径。
FitShape VgTriState。 将文本路径拉伸到形状框边缘。
VgTriState。 确定是否显示字符路径。
字符串 字符串。 要呈现为文本路径的文本。
修剪 VgTriState。 删除为升序和降序保留的任何其他空间(如果未使用)。
XScale VgTriState。 使用直线 x 度量,而不是沿路径测量。

VML 对象模型中使用的数据类型

VML 对象模型使用以下数据类型。

Double 数据类型

一个双精度整数,范围从 -infinity 到无穷大。

固定数据类型

从 -32,766.0 到 32,766.0 的浮点数。

整数数据类型

一个整数,范围从 -infinity 到无穷大。

IVgAdjustments 数据类型

对可用于更改形状尺寸的形状的调整集合。 调整可以用作临时占位符,或者出于任何原因使用变量。 集合中只有 8 个调整。

属性 描述
存在 IVgTriState。 确定是否存在指定的调整。 请注意,必须使用索引;也就是说,exists(item)必须用于检索项的存在。
项目 。 从 0 到 7 编制索引的调整数组。 请注意,可以谨慎指定调整;也就是说,中间数组值可能并不总是填充的。 例如,项目 1、3 和 5 可以具有长度为 3 的值,其中 item(0)、item(2)和 item(4)指定。 若要查看某个项是否存在,请使用 Exists 属性。
长度 整数。 调整数。 不能大于 8。
价值 字符串。 数值的文本表示形式,每个数字之间的逗号。

IVgColor

指定颜色。

属性 描述
RGB VgRGBType。 颜色的 RGB 值(长)。 仅当类型为 RGB 时有效。
R 整数。 颜色的红色分量。 范围为 0 到 255。
G 整数。 颜色的绿色分量。 范围为 0 到 255。
B 整数。 颜色的蓝色分量。 范围为 0 到 255。
字符串 字符串。 颜色的文本表示形式。 支持以下命名颜色类型:
  • 黑色 (#0000000)
  • Silver (#C0C0C0)
  • 灰色 (#808080)
  • 怀特(#FFFFFF)
  • 马龙 (#8000000)
  • 红色(#FF0000)
  • 紫色 (#800080)
  • 富奇西亚(#FF00FF)
  • 绿色 (#008000)
  • 石灰 (#00FF00)
  • 奥利弗 (#808000)
  • 黄色(#FFFF00)
  • 海军 (#000080)
  • 蓝色(#0000FF)
  • Teal (#008080)
  • 水 (#00FFFF)
类型 VgColorType。 颜色类型。 以下类型之一:
  • 混合
  • RGB
  • 方案

IVgEquation

用于公式的公式。

操作 VgEquationOperationType 要对参数执行的作的名称。 可以在公式中使用以下作:
操作 描述
Abs 绝对值。
abs(v)
Atan2 极地算术--以 fd 单位(度乘以 65536)。
atan2(p1,v)
因为 余弦值,fd 单位的参数(度乘以 65536)。
v * cos(p1)
Cosatan2 在中间计算中保持完全准确性。
v * cos(atan2( p2,p1 ))
椭圆 椭圆
如果 如果条件测试。 v > 0 p1 : p2
麦克斯 两个值中的较大值。
最大(v,p1)
Mid 平均 (v + p1)/2
最小值 两个值中的较小值。 分钟(v,p1)
国防部 模。
产品 用于乘法和除法。 v * p1 / p2
正弦值,fd 单位中的参数(度乘以 65536)。
v * sin(p1)
西纳坦2 在中间计算中保持完全准确性。 v * sinatan2(p2,p1)
Sqrt 结果为正值,向下舍入。
sqrt(v)
用于加减。
v + p1 p2
Sumangle 现有角度(按 65536 缩放),其中 p1 和 p2 以度为单位。
v + p1 * 65536 + p2 * 65536
正切,参数以 fd 单位(度乘以 65536)。
v * tan(p1)
瓦尔 定义其他值中的参考值。

Param1 整数。 第一个参数。
Paramtype1 VgFormulaParamType。 第一个参数的类型。 支持以下值:
类型 描述
价值 参数是简单值。
AdjustmentReference 参数是对调整的引用。 例如,如果第一个参数为 1,则将使用第一个调整的值。
FormulaReference 参数是对上一公式结果的引用的结果。 例如,如果第一个参数为 2,则将使用公式 2 的结果。

Param2 整数。 第二个参数。
Paramtype2 VgFormulaParamType 参数 2 的类型。
瓦尔 整数。 结果。
Valtype2 VgFormulaParamType。 结果的类型。

IVgFixedRectangle

指定固定矩形。

属性 描述
价值 字符串。 指定路径的文本值。
。 矩形的最左侧坐标。
返回页首 。 矩形的最顶层坐标。
。 矩形的最右侧坐标。
。 矩形最底部的坐标。

IVgFixedRectangleArray

固定矩形的数组。

属性 描述
价值 字符串。 数组的文本表示形式。
长度 整数。 此数组中的矩形数。
项目 IVgFixedRectangle。 指定索引处的矩形对象。

IVgFormula 数据类型

可改变形状路径或用于其他计算目的的公式的定义。 公式可以基于形状的 Adj 属性,这可能会更改。 公式也可以引用其他公式。

属性 描述
Eqn IVgEquation。 每个公式将单个值定义为表达式的计算结果。 表达式由此属性定义,具有作的一般形式,后跟最多三个参数,可以是调整值(例如#2)、早期公式的结果(例如@2)、固定数字或预定义值。

IVgFormulas 数据类型

公式对象的集合。

属性 描述
长度 整数。 集合中的公式对象数。
项目 IVgFormula。 特定公式。 请注意,公式数组可以继承形状类型。

IVgGradientColorArray

定义渐变(混合颜色范围)的颜色数组。

属性 描述
价值 字符串。 指定颜色数组;例如,“red .2;绿色 .4;黑色 .7”
长度 整数。 数组中的颜色数。
方法 描述
AddColor VgFraction。 在分数指定的终结点处添加新颜色。 默认情况下,新颜色为白色,并且返回值。 然后,可以通过引用更改颜色。
RemoveColor VgFraction。 删除分数指定的终结点的颜色。 注意:如果 0.0 或 1.0 不存在,则表示隐含,此时使用白色颜色。

IVgPoints 数据类型

定义形状的点数组。

属性 描述
价值 字符串。 数组的文本表示形式。
长度 整数。 此数组中的点数。
项目 IVgVector2D。 指定索引处的点。

IVgSkewMatrix 数据类型

用于倾斜形状的矩阵,窗体中的透视转换矩阵“sxx,sxy,syx,syy,px,py” [s =scale, p =perspective]。 如果偏移量为绝对单位,则 px,py 以 emu ^-1 单位为单位;否则,它们是形状大小的反比例。

属性 描述
XtoX
YtoX
XtoY
YtoY
PerspectiveX
PerspectiveY

IVgSkewOffset

指定倾斜的偏移量。

属性 描述
价值 字符串。 偏移量的文本表示形式。
X 。 X 组件。 百分比或度量值。 如果没有单位,则隐含 ShapeRelative 类型;否则,隐含绝对类型。
Y 。 Y 组件。
类型 VgSkewTransformType。 指定转换的类型。 有效值为介于 -infinity 和无穷大之间的整数点。
类型 描述
ShapeRelative 偏移量的值是原始形状大小的百分比(比率);例如,值为 0.5 表示形状大小的一半偏移量。
绝对 这些值为绝对单位。

IVgVector2D 数据类型

指定由两 数字组成的二维向量。

属性 描述
价值 字符串。 用空格分隔的两个向量数字的文本表示形式。
X 。 此向量的 X 分量。
Y 。 此向量的 Y 分量。
类型 VgVectorType。 此向量的预期单位。 值为:
  • 长度
  • AngleInDegrees
  • 分数
  • 数字百分比整数

IVgVector3D 数据类型

指定由三个 数字组成的三维向量。

价值 字符串。 用空格分隔的三个向量数字的文本表示形式。
X 。 此向量的 X 分量。
Y 。 此向量的 Y 分量。
Z 。 此向量的 Z 分量。
类型 VgVectorType。 此向量的预期单位。 值为:
  • 长度
  • AngleInDegrees
  • 分数
  • 百分比
  • 整数

长度数据类型

一个浮点数,范围为 0 到无穷大。

度量数据类型

从 -infinity 到无穷大的浮点数。

字符串数据类型

任何长度的字符数据。

VgBlackWhiteMode

黑白呈现模式。 可能的值包括:

  • 颜色
  • 自动
  • 灰度
  • LightGrayScale
  • InverseGray
  • GrayOutline
  • BlackTextAndLines
  • HighContrast
  • 黑色
  • 怀特
  • Undrawn

VgFraction 数据类型

范围为 0.0 到 1.0 的浮点数。 分数也可以指定为百分比;例如“50%”。

VgTriState 数据类型

用于可以是三种状态之一的值的枚举:

  • TRUE
  • FALSE
  • MIXED