我有一些文本,我将对其进行处理以生成 uml 序列图 图像。我可以将 python
或 perl
中的文本处理成现有“文本到 uml”工具的格式,但我试图消除这个额外的步骤并提供图像输出直接来自 python/perl 脚本。
有没有我可以使用的 python 或 perl 包/模块?
最佳答案
有许多 Python 替代品。
如果您想从头开始生成图像,您可能需要考虑 PIL (Python 图像库),Python 的“事实上的”图像库。
但是,特别是对于序列图,blockdiag 图图像生成器库(也使用 PIL)包括一个名为 seqdiag 的序列图生成器。 .例如,这里是如何定义和生成一个简单但完整的序列图,包括图定义:
from seqdiag import parser, builder, drawer
diagram_definition = u"""
seqdiag {
browser -> webserver [label = "GET /index.html"];
browser <- webserver;
}
"""
tree = parser.parse_string(diagram_definition)
diagram = builder.ScreenNodeBuilder.build(tree)
draw = drawer.DiagramDraw('PNG', diagram, filename="diagram.png")
draw.draw()
draw.save()
参见 http://blockdiag.com/en/seqdiag/examples.html有关更多示例(序列)图定义和样式选项。
关于python - 使用 python 或 perl 生成 uml 序列图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13136247/