Visio软件因其强大功能和所见所得的显示及交互方式,在工业控制特别是各类组态软件中得到大量应用,且都是在原Visio软件的基础上根据功能需要进行了二次开发。目前国内Visio二次开发的资料相对较少,后续将基于C#对Visio的二次开发相关基础知识进行介绍,本章将简单介绍如何使用C# Winform实现在Visio图纸中指定位置添加水印。
测试环境搭建(安装Visio2010或以上版本,使用VS2019集成开发环境):
添加如下引用
在Winform中添加Visio Drawing Control控件,工具栏右键->选择项->Com组件,找到Visio对应版本的Visio Drawing Control,如Visio2010对应的是14.0。
将控件拖入Winform,调整到合适位置。
新建空白Visio文件,设置页码属性为A4大小,297mm宽,420mm高,纵向。
加载图纸文件后,点击“添加水印”按钮,可在图纸的(200mm,400mm)位置添加一个宽50mm,高10mm的水印,效果如下:
要实现在Visio图纸中指定位置添加水印。主要涉及两个关键点:
- 单位转换
- 图元绘制及其属性设置(如字体、颜色、透明度等)
Visio图纸DrawRectangle函数缺省的绘制单位是英制,需要转换为mm,如下:
绘制水印函数如下:
调用:
增加水印后可以将图纸保存。上述代码仅为简单示意,实际使用过程中可定义各种复杂的格式或水印图片,用于对各种Visio工艺图纸的批量自动添加水印。
本篇完。