在vsdx文件中以编程方式创建/操作visio绘图

时间:2019-05-19 18:18:29

标签: c# visio visio-vba

我需要以编程方式部署visio可视化。目前,我只需要添加带有以下属性的便笺:大小,位置,颜色,其上的文本和文本对齐方式,但是将来该解决方案应该可以扩展为具有其他形状。有关形状的信息存储在Google Cloud Firestore数据库中。我对任何一种解决方案和代码语言都非常开放,但是如果可能的话,运行支持Node.js,Python和Go的Google云函数会很棒,但是我也了解了有关支持.NET的知识,而且应该尽可能开源。 我完全不是一位经验丰富的代码开发人员,因此,如果您可以提供一些代码示例,那就太好了。这是我在所有发现的文档中实际上想念的。

据我研究,Visio 2016 SDK在这种情况下会很有趣。但是我没有找到需要的接近示例。 F.e. this link显示如何替换形状中的文本,或者this link显示如何添加矩形。但是解释很少见... 我用master..XML,page..XML等分析了visio文件本身,但是值的数量令人困惑。这就引出了一个问题,SDK将如何处理呢?如何定义主形状,如何设置它们的格式?

另一个选择是Apose.Diagram API,但是我不确定是否支持粘滞便笺。提供了一个示例here。不幸的是,它是商业性的,但是如果没有其他选择,我会去做。

感谢您的咨询!

1 个答案:

答案 0 :(得分:0)

只是作为有关实际状态的信息:我通过手动操作vsdx来“解决了它”。 vsdx只是一个以.vsdx结尾的压缩zip文件。如果将其重命名为.zip,将看到许多xml文件。如果只需要放置简单的形状而彼此之间没有关系,则文件page1.xml是一个重要的文件。 在page1.xml中,有名为的xml部分,只需操作并复制这些部分即可。 我还没有尝试过sdk,也没有尝试过apose.diagram之类的第三方解决方案,但是对于以矩形形式可视化对象的实际用例来说,就足够了