1. 产品
  2.   图表
  3.   Python
  4.   Visio2Python
 
  

开源库,将 Visio 图表转换为 Python 代码

领先的开源 Python 库,用于将 Visio 图表转换为 Python 代码。它支持修改图表、提取形状/文本等。

什么是 Visio2Python 库?

Microsoft Visio 是一个强大的技术图表创建工具——从网络拓扑和软件架构到流程图和系统地图。然而,开发者经常面临的一个主要限制是如何以编程方式访问和重用这些 Visio 文件中的数据。这就是开源 Python 库 Visio2Python 发挥作用的地方。Visio2Python 允许开发者解析 .Visio2Python Visio 文件并将图表转换为结构化、可用的 Python 数据。无论您是在构建自动化工具、文档生成器,还是系统配置应用,该库都有助于弥合可视化设计与代码逻辑之间的鸿沟。

Visio2Python 库托管在 GitHub 上,是一个了不起的工具,可自动从 Microsoft Visio 创建的图表直接生成 Python 或 JavaScript 代码。这种创新方法可以显著简化开发流程,降低手动转录错误的可能性,并促进更直观的应用构建方式,尤其是那些由状态机或工作流驱动的应用。Visio2Python 的最大优势之一是它不需要安装 Microsoft Visio。它直接解析原始的 .Visio2Python 文件,使其跨平台且轻量。该库使用纯 Python 编写,仅依赖标准库和 lxml 进行 XML 解析。这使得集成和扩展变得容易。它是一个强大且灵活的工具,可将静态的 Visio 图表转化为可操作的结构化数据。对于软件开发者而言,它打开了一个新世界——图表不再只是视觉辅助,而是数据源、配置生成器和自动化输入。

Previous Next

开始使用 Visio2Python

推荐的安装 Visio2Python 库的方式是使用 PyPI。请使用以下命令以顺利完成安装。

通过 PyPI 安装 Visio2Python 库

pip install visio2python

通过 GitHub 安装 Visio2Python 库

git clone https://github.com/vesellov/visio2python.git
cd visio2python
pip install -r requirements.txt

将 Visio 图表解析为 Python 代码

开源的 visio2python 库通过根据预定义的一套约定解释 Visio 图形中的元素来工作。这些约定允许开发者以可视化方式定义其应用程序的结构和行为,库随后将其转换为可执行代码。此简化示例展示了 Visio 中定义的可视化状态、事件和操作如何被翻译为 Python 代码的结构和行为。下面的示例演示了软件开发者如何将 Visio 文件解析为 Python 对象。

如何将 Visio 文件解析为 Python 对象?

from visio2python import VisioFile  

# Load a Visio file  
visio = VisioFile("network_diagram.vsdx")  

# List all shapes  
for shape in visio.shapes:  
    print(f"Shape: {shape.text}, ID: {shape.id}")  

# Get connections between shapes  
for connector in visio.connectors:  
    print(f"Connects {connector.from_id} to {connector.to_id}")  

以编程方式修改图表

visio2python 库已完整支持以编程方式加载和修改现有的 Visio 图表。只需几行 Python 代码,软件开发者即可读取现有图表、更新形状、添加注释或动态重构图表。以下示例演示了软件开发者如何加载现有图表、修改其中的形状文本并保存修改后的图表。

如何通过 Python API 编程修改 Visio 图表?

# Change shape text  
for shape in visio.shapes:  
    if "Server" in shape.text:  
        shape.text = "Server (Updated)"  

# Save modified diagram  
visio.save("updated_diagram.vsdx")  

通过 Python 从页面提取形状/文本

开源的 Visio2Python 库提供了一种方法,可在 Python 应用程序中无需安装 Visio 本身即可从 Microsoft Visio 文件中提取形状、连接线和属性。它读取 .vsdx 文件的内部 XML 格式并将其转换为 Python 对象——为开发者在图表数据之上构建提供了无数机会。以下简单代码片段打印出图表第一页中所有形状的 ID 及其关联的文本。

如何通过 Python API 打印 Visio 图表中所有形状 ID 及其关联文本?

from visio2python import VSDX

vsdx = VSDX("example.vsdx")
page = vsdx.pages[0]

for shape in page.shapes:
    print(f"Shape ID: {shape.ID}, Text: {shape.text}")

更快的开发周期与最小化错误

能够快速从图表生成代码加速了开发过程。对应用逻辑的迭代和修改可以以可视化方式实现,然后快速转换为代码。通过直接将可视化图表翻译成代码,手动转录过程中引入错误的风险大大降低。这导致更可靠、更稳健的应用程序。

 中国人