使用文本编辑器可以轻松创建Software Companions XML标记格式。您也可以从ViewCompanion导出XML文件。
使用这种格式,您可以轻松地从头开始创建自己的自定义标记文件。
在 ViewCompanion span>中,在命令行转换和打印过程中,您可以结合使用XML格式的标记文件和命令行
参数 /lxml。
您也可以使用“Add From File”菜单命令从应用程序内部加载XML标记文件,或者在批量转换过程中进行添加。
如果您使用的是 scViewerX span>,则可以使用 MarkupAddFromFile span>方法加载XML标记文件。
要加载内存中已经存在的XML数据,可以使用 MarkupCreateFromXML span>。
Software Companions XML标记文件的默认扩展名是.scmx span>,但是也可以使用.xml。 span>
文件格式规范
该文件必须以以下标头开头:
当前仅支持UTF-8编码。
然后是标题和元素部分。
完整的示例XML标记文件如下所示:
该xml标记文件定义了一个文本元素。文本中心位置处于文档宽度的50%和文档高度的50%。
标记坐标系原点始终位于图形的左下角。
坐标单位可以是毫米,英寸或用本机(1016 DPI)值给出。
所有颜色值均以十六进制表示法编码为红色,绿色和蓝色强度(HTML标准-#RRGGBB)。
“层”部分定义了两个层。
您将在下面找到有关不同部分说明的更多信息。
标头部分
这一部分包括对所有标记元素都十分常见的设置。
本节中的可用条目是:
Unit
接受的值:
值 | 说明 |
mm | 坐标和尺寸以毫米为单位。 |
inch | 坐标和尺寸以英寸为单位。 |
mil | 坐标和尺寸以1/1000英寸为单位。 |
native | 坐标和尺寸以原始坐标(1016 DPI)给出。 |
此元素是必需的。
图层部分
本节包含标记层定义。每层定义可以具有三个不同的属性。
定义的第一个图层的索引为0,下一个索引的索引为1,依此类推。定义元素时将使用图层索引。
有关每层的属性说明如下:
属性名称 | 说明 |
Name | 层名称。 |
Color | 放置在此层上的元素的默认颜色。 |
Enabled | 输入一个不同于0的值以使该图层可见。 |
示例层定义
此示例xml定义将创建一个名为“Markup Layer 1”的层,其默认颜色为蓝色,并且该层将可见并启用。
请注意,“图层”部分是可选的,仅当您要添加一层以上的标记时才需要。
元素部分
本节包含一个或多个元素条目。
请查看下方有关可用元素类型的说明。
元素部分
每个元素部分都定义一个新的标记元素,也称为注释或评论。
一些关键字对于所有元素类型都是通用的,而某些则是特定于类型的。
下表中列出了所有元素类型的通用关键字。
关键字 | 说明 |
type | 标记元素类型关键词 以下元素类型可用: Arrow Barcode Circle Ellipse Erase Polygonal Area Erase Rectangular Area Eraser Line Picture Polygon Polyline Rectangle Revision Cloud Rounded Rectangle Rubber Stamp Shape Symbol Text |
handle | 每一元素应用一个独有的元素数字ID。如果未提供,则控件将分配一个ID。 |
hyperlink | 链接到文档或URL |
layer | 用于标记元素的层索引。层索引从零开始。 |
locked | 设置元素锁定标志。锁定的元素(非零值)无法移动或修改。 |
page | 页面索引放置标记元素。页面索引从零开始。 如果将页面索引设置为-1,则该元素将在文档中的所有页面上可见。 |
transparent | 如果定义,标记元素将是透明的。 |
user | 创建元素的用户名。如果未提供用户名,则将使用当前登录用户的名称。 |
箭头元素
除了常用关键字之外,箭头元素还需要以下关键字:
关键字 | 说明 |
points | 本节包含箭头折线中每个点的一个点条目。每个点都用x和y属性定义。 请参见下面的xml定义,以了解如何描述点条目。 |
color | 定义要用于元素的绘制颜色。 |
arrowhead | 定义要使用的箭头标题的类型。支持的箭头类型:0:打开,1:关闭,2:填充。 |
arrowsize | 定义箭头标题的大小。 |
linewidth | 定义箭头线的宽度。宽度是使用活动单位定义的。该条目是可选的。· |
示例箭头元素xml定义:
此xml数据将创建以下箭头:
条形码标记元素
创建条形码元素。请注意,如果以后保存标记,条形码元素将另存为符号元素。
除常见关键字外,条形码元素定义还使用以下关键字:
关键字 | 说明 |
center | 条码中心坐标。通过将x和y设置为文档范围的百分比或绝对值来定义中心坐标。 用法示例: <center x="50%" y="50%"/> 添加以文档中心为中心的条形码。 <center x="50%" y="40"/> 将条形码置于页面底部上方40毫米处并水平居中。 |
size | 以当前文档范围的百分比或绝对值设置条形码的尺寸。 使用两个名为w和h的属性定义范围。 示例定义: <size w="10%" y="10%"/> 创建一个宽度为文档页面宽度10%的条形码,其高度为文档页面高度的10%。 <size w="40" y="40"/> 创建宽度和高度为40个单位的条形码。 |
barcodetype | 要使用的条形码编码器的类型。支持以下条形码标准:
|
barcodeincludetext | 包括实际文本作为条形码图像的一部分。 |
barcodelabel | 可选已添加到条形码图像的标签文本。 |
imagerotation | 设置图像条形码图像的旋转度数。 支持以下旋转度数:
|
text | 使用所选条形码类型进行编码的文本。 |
使用绝对坐标示例条形码元素定义:
圆元素
除了常用关键字,圆(circle)元素还需要以下关键字:
关键字 | 说明 |
center |
圆心坐标。通过将x和y设置为文档范围的百分比或绝对值来定义中心坐标。 用法示例: <center x="50%" y="50%"/> 添加以文档中心为中心的圆。 <center x="50%" y="40"/> 将圆置于页面底部上方40毫米处并水平居中。 |
radius | 圆的半径。 |
fillcolor | 定义元素的填充颜色。 |
color | 定义元素的轮廓颜色。该条目是可选的。 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。 |
linestyle | 定义用于轮廓的线型。该条目是可选的。 |
fillstyle | 定义元素的填充样式。该条目是可选的。 |
样本圆元素xml定义:
此xml定义将创建下面这样的圆:
椭圆元素
除了常用关键字之外,椭圆元素还使用以下关键字:
关键字 | 说明 |
boundary |
为创建的椭圆定义边界。使用四个属性定义边界。 这些属性的名称为:x1,y1,x2和y2。 示例边界条目<boundary x1='80' x2='180' y1='10' y2='110'/> |
fillcolor | 定义元素的填充颜色。 |
color | 定义元素的轮廓颜色。 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
linestyle | 定义用于轮廓的线型。该条目是可选的。 |
fillstyle | 定义要用于元素的填充样式。该条目是可选的。 |
示例椭圆元素xml定义:
此xml数据将创建以下椭圆:
擦除多边形区域
定义要使用多边形隐藏(擦除)的区域。此功能也称为抹去。
除常见关键字外,“擦除多边形区域”元素还需要以下关键字:
关键字 | 说明 |
points |
在本部分中,多边形中的每个点包含一个点条目。每个点都用x和y属性定义。 请参见下面的xml定义,了解如何对点条目进行定义。 |
示例擦除多边形区域元素xml定义:
当用于示例文件时,此xml数据将擦除多边形区域,如下所示compare_revA.plt:
删除矩形区域
使用矩形定义要隐藏(擦除)的区域。此功能也称为抹去。
除常用关键字外,“擦除矩形区域”元素还需要以下关键字:
关键字 | 说明 |
boundary | 为创建的矩形定义边界。使用四个属性定义边界。 这些属性的名称为:x1,y1,x2和y2。 示例边界条目:<boundary x1='150' x2='190' y1='230' y2='290'/> |
擦除矩形区域元素xml定义的示例:
当用于示例文件时,此xml定义将擦除矩形区域,如下所示:compare_revA.plt:
橡皮擦
定义一条多义线,该多义线将擦除/隐藏工程图内容。这在ViewCompanion中被称为徒手擦除器(freehand eraser)。
定义的折线将使用当前背景色和 linewidth i>设置定义的宽度绘制。
除了常用关键字之外,橡皮擦元素还需要以下关键字:
关键字 | 说明 |
points | 在本节中,折线中的每个点包含一个点条目。每个点都用x和y属性定义。 请参见下面的xml定义,以了解如何描述点条目。 |
对橡皮擦元素xml定义的示例:
线元素
除了常用关键字之外,线元素还使用以下关键字:
关键字 | 说明 |
boundary | 为创建的线定义边界。使用四个属性定义边界。 这些属性的名称为:x1,y1,x2和y2。 示例边界条目:<boundary x1='80' x2='180' y1='10' y2='110'/>. 该线将在x1,y1和x2,y2之间绘制。 |
color | 定义元素的线条颜色。 |
linewidth | 定义线的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
linestyle | 定义用于线条的线条样式。该条目是可选的。 |
示例行元素xml定义:
此xml定义将创建以下线条:
图片元素
除了常用关键字之外,图片元素还使用以下关键字:
关键字 | 说明 |
center | 图片中心坐标。通过将x和y设置为文档范围的某个百分比或使用绝对值来定义中心坐标。 用法示例: <center x="50%" y="50%"/> 添加图片居中于文档中心。 <center x="50%" y="50"/> 在页面底部上方50毫米处添加图片且水平居中。 |
size | 使用当前文档范围的百分比或使用绝对值来设置图片的尺寸。 如果未指定尺寸,则将使用实际图像尺寸,具体取决于图像文件的dpi(分辨率)。 使用两个名为w和h的属性定义尺寸。 示例定义: <size w="10%" h="10%"/> 添加图片,宽度为文档页面宽度的10%,高度为文档页面高度的10%。 <size w="40" h="40"/> 添加宽度和高度为40个单位的图片。 |
filename | 图片文件的完整路径将作为标记元素添加。 请注意,必须使用双反斜杠(\\)或单斜杠(/)。 如果图片文件与XML文件位于同一文件夹中,则只需包含文件名。 |
示例图片元素xml定义:
此xml定义将添加以下图片:
多边形元素
除了常用关键字之外,多边形元素还需要以下关键字:
关键字 | 说明 |
points | 在本部分中,多边形中的每个点包含一个点条目。每个点都用x和y属性定义。 请参阅下面的多边形元素定义,以了解如何描述点条目。 |
color | 定义要用于元素的线条颜色。 |
fillcolor | 定义元素的填充颜色。 |
color | 定义元素的轮廓颜色。 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
fillstyle | 定义要用于元素的填充样式。该条目是可选的。 |
多边形元素xml定义的示例:
此xml定义将创建以下4点多边形:
折线元素
除常用关键字之外,折线元素还需要以下关键字:
关键字 | 说明 |
points | 在本节中,折线中的每个点包含一个点条目。每个点都用x和y属性定义。 请参见下面的折线元素定义,以了解如何描述点条目。 |
color | 定义元素的线条颜色。 |
fillcolor | 定义元素的填充颜色。 |
color | 定义元素的轮廓颜色。 |
linewidth | 定义折线的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
linestyle | 定义用于轮廓的线型。该条目是可选的。 |
对折线元素xml定义的示例:
此xml定义将创建以下折线:
矩形元素
除了常用关键字之外,矩形元素还需要以下关键字:
关键字 | 说明 |
boundary | 为创建的矩形定义边界。 使用四个属性定义边界。这些属性的名称为:x1、y1、x2 和y2。 示例边界条目:<boundary x1='80' x2='180' y1='10' y2='110'/> |
fillcolor | 定义元素的填充颜色。 |
color | 定义元素的轮廓颜色。 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
fillstyle | 定义元素的填充样式。该条目是可选的。 |
矩形元素xml定义示例:
左侧的xml数据将创建以下矩形:
修订云元素
除了通用关键字,修订云元素还需要以下关键字:
关键字 | 说明 |
boundary | 为创建的修订云定义边界。使用四个属性定义边界。 这些属性的名称是: x1、y1、x2 和y2。 示例边界条目:<boundary x1='80' x2='180' y1='10' y2='110'/> |
fillcolor | 定义元素的填充色。 |
color | 定义元素的轮廓色。 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
fillstyle | 定义元素的填充样式。该条目是可选的。 |
arclimit | 设置用于创建修订云的每个圆弧的最大半径大小。该条目是可逆的。 |
修订云元素xml定义的示例:
此xml定义将创建以下修订云:
圆角矩形元素
除了常用关键字之外,圆角矩形元素还需要以下关键字:
关键字 | 说明 |
boundary | 为创建的圆角矩形定义边界。使用四个属性定义边界。 这些属性的名称为:x1、y1、x2和y2。 示例边界条目: <boundary x1='80' x2='180' y1='10' y2='110'/> |
fillcolor | 定义元素填充色。 |
color | 定义元素轮廓色 |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
fillstyle | 定义元素的填充样式。该条目是可选的。 |
示例矩形元素xml定义:
此xml定义将创建以下元素:
橡皮图章元素
橡皮图章元素定义方法除常用关键字外,还使用以下关键字:
关键字 | 说明 |
center |
使用文档范围的百分比或使用绝对坐标来定义橡皮图章的中心点。中心点是使用两个属性定义的,它们分别命名为x和y。
示例定义: <center x="50%" y="50%"/> 这会将图章放置在文档页面的中心。 <center x="100" y="100"/> 这将使图章的中心距页面左部100毫米,距页面底部100毫米。 |
size |
以当前文档页面范围的百分比或绝对值设置橡皮图章的范围。使用两个名为w和h的属性定义范围。 示例定义: <size w="20%" y="10%"/> 这将创建一个宽度等于文档页面宽度20%,并且高度将是文档页面高度10%的图章。 <size w="80" y="20"/> 这将创建一个宽度为80单位,高度为20单位的图章。 |
backcolor | 定义图章背景色。 |
textcolor | 定义用于图章文本的颜色。 |
text | 图章文本 |
font | 定义用于图章文本的字体。 字体是使用几种不同的属性定义的,它们每个都对应于Windows LOGFONT定义。 支持以下字体属性: height-与LOGFONT lfHeight相同。 请注意,该值将被重新计算。 方向-与LOGFONT lfOrientation相同。 重量-与LOGFONT lfWeight相同。 斜体-与LOGFONT lfItalic相同。 下划线-与LOGFONT lfUnderline相同。 删除线-与LOGFONT lfStrikeout相同。 字符集-与LOGFONT lfCharset相同。 outprecision-与LOGFONT lfOutPrecision相同。 clipprecision-与LOGFONT lfClipPrecision相同。 quality-与LOGFONT lfQuality相同。 pitch-与LOGFONT lfPitchAndFamily相同。 facename-与LOGFONT lfFaceName相同 示例字体定义: <font italic='1' facename='Times New Roman'/> |
linewidth | 定义轮廓的宽度。宽度是使用活动单位定义的。该条目是可选的。 |
橡皮图章元素定义示例:
左侧的xml数据将创建以下橡皮图章:
形状元素
shape元素除了常用关键字外,还需要以下关键字:
关键字 | 说明 |
center |
通过将x和y设置为文档范围的百分比或绝对值来定义中心坐标 用法示例: <center x="50%" y="50%"/> 添加以文档中心为中心的形状。 <center x="50%" y="40"/> 在页面底部上方40毫米处添加图片且水平居中。 |
shapetype |
预定义的形状类型之一:
|
shapesize | 形状元素的大小(以当前单位为单位)。 |
形状元素定义示例:
此xml定义将在文档中添加以下符号:
符号标记元素
除了常见关键字,symbol元素还需要以下关键字:
关键字 | 说明 |
boundary | D为创建的符号定义边界。使用四个属性定义边界。这些属性的名称为:x1、y1、x2和y2。 边界条目示例:<boundary x1='100' x2='150' y1='200' y2='250'/> |
symbollibrary | 要使用的符号库的名称。 |
symbolname | 要使用的符号名称。 |
符号元素定义示例:
此xml定义将在文档中添加以下符号:
本示例中使用的示例符号库包含在ViewCompanion安装中。
文字标记元素
除了通用关键字,text元素还需要以下关键字:
关键字 | 说明 |
center |
文字中心坐标。文本中心坐标是通过将x和y设置为文档范围的百分比或绝对坐标来定义的。 用法示例: <center x="50%" y="50%"/> 这将以文档中心为中心添加文本。 <center x="100" y="20"/> 这将在距页面左侧100毫米、距页面底部20毫米处添加文本。 |
insertx |
文本插入x坐标。该值是水平文本原点的绝对坐标。 您可以如上所述使用文本中心,也可以将insertx与inserty一起使用以定义文本原点。 |
inserty |
文字插入y坐标。该值是垂直文本原点的绝对坐标。 您可以如上所述使用文本中心,也可以将insertx与inserty一起使用以定义文本原点。 |
alignment |
对齐设置定义要插入的文本的原点。 请注意,此设置只能与insert和insert关键字一起使用。 可以使用以下值:
|
rotation | 文字旋转度数。 |
textcolor | 定义用于文本的颜色。 |
text | 要显示的文本字符串。 |
font | 定义用于文本的字体。 字体是使用几种不同的属性定义的,它们每个都对应于Windows LOGFONT定义。 支持以下字体属性: height-与LOGFONT lfHeight相同。 width-与LOGFONT lfWidth相同。 方向-与LOGFONT lfOrientation相同。 重量-与LOGFONT lfWeight相同。 斜体-与LOGFONT lfItalic相同。 下划线-与LOGFONT lfUnderline相同。 删除线-与LOGFONT lfStrikeout相同。 字符集-与LOGFONT lfCharset相同。 outprecision-与LOGFONT lfOutPrecision相同。 clipprecision-与LOGFONT lfClipPrecision相同。 质量-与LOGFONT lfQuality相同。 pitch-与LOGFONT lfPitchAndFamily相同。 facename-与LOGFONT lfFaceName相同。 字体定义示例<font italic='1' facename='Times New Roman'/> |
文本元素定义示例:
左侧的xml数据将创建以下文本元素:
线条和填充样式值
线型
可以使用以下值之一定义线型
0 实线。
1 虚线。
2 点线。
3 点划线。
4 双点划线。
填充方式
填充方式可以具有以下值之一:
0 轮廓(无填充)
1 实线填充
2 水平舱口
3 垂直舱口
4 阴影
5 对角
6 对角阴影线