Svg 不使用图形工具包生成图像
我正在考虑创建一个用于生成图像的CLI工具,类似于Graphviz或PlantUML(最好是Rust,但这个概念也应该应用于其他语言)。输入为基于文本的描述格式,输出应为光栅格式或矢量格式 我想知道我应该如何在我的应用程序内部表示这一点?如果我使用图形工具包,我就有了生成小部件、布局文本的所有工具,但当然,这通常与输出设备紧密相连,所以我宁愿不使用它 内部使用是否有类似的东西?我是否应该直接在内部将所有内容表示为SVG,然后使用SVG渲染器生成光栅格式?但我想我仍然不了解我的应用程序中的布局,例如,覆盖、文本包装等Svg 不使用图形工具包生成图像,svg,rendering,Svg,Rendering,我正在考虑创建一个用于生成图像的CLI工具,类似于Graphviz或PlantUML(最好是Rust,但这个概念也应该应用于其他语言)。输入为基于文本的描述格式,输出应为光栅格式或矢量格式 我想知道我应该如何在我的应用程序内部表示这一点?如果我使用图形工具包,我就有了生成小部件、布局文本的所有工具,但当然,这通常与输出设备紧密相连,所以我宁愿不使用它 内部使用是否有类似的东西?我是否应该直接在内部将所有内容表示为SVG,然后使用SVG渲染器生成光栅格式?但我想我仍然不了解我的应用程序中的布局,例
谢谢它与Graphviz、PlantUML、TikZ、SVG和/或gpic/dpic有什么不同?一般来说,它们都是一样的,但我对底层概念感兴趣。SVG输出的一个优点是它具有文本性-更易于阅读和调试。如果您获取Graphviz源代码()查看plugin/core/gvrender\u core\u svg.c以了解它如何生成svg(其他输出格式还有其他渲染器)。pic/gpic/dpic语言更小,有3个(或更多)开源实现。您可以从中学习。