我正在使用VS2013Express创建一个基于Windows窗体的应用程序,它将显示并最终打印Visio文档,而不是依赖基于浏览器的Visio Viewer。不用说这是一个非常具体的要求,所以真的不需要任何人告诉我使用MS Visio Viewer!
到目前为止,我可以打开Visio文档,使用AxVisioViewer.dll控件显示它。我甚至可以在某种程度上打印......
问题是我目前只能使用PrintFromScreen方法打印,该方法基本上捕获屏幕上显示的表单图像并创建它的Raster BitMap。
我将BitMap图像复制到表单上的隐藏面板(删除工具栏等),然后打印面板的内容。简单(ish)!
这里是link to the page我用来创建面板并打印图像。
我希望能够做的是调整大小(Vector not Raster以保持比例)并根据需要使图像居中,以确保文档正确打印。
答案 0 :(得分:0)
您需要将绘图置于控件中心。 请检查以下链接。
https://msdn.microsoft.com/en-us/vba/visio-vba/articles/viewer-zoomtorect-method-visio-viewer
您也可以检查缩放和平移方法。