将Tkinter Canvas保存为SVG文件
项目描述
此模块提供了 convert 函数,用于将给定canvas对象上的所有或选定项转换为SVG。
支持的项
线条
带箭头的线条
多边形
平滑线条和多边形
椭圆形(即圆形和椭圆)
圆弧(所有类型,即ARC、CHORD、PIESLICE)
矩形
文本(仅限未展开的,即属性 width = 0)
不支持的项
图像
位图
窗口
不应用纹样。
公共函数
convert(document, canvas, items=None, tounicode=None)
document — SVG文档,支持DOM的对象,即提供 createElement 方法等。(可以使用 SVGdocument 函数获取此类对象)
canvas — Tkinter.Canvas对象
items — 要转换的对象列表;如果为 None,则转换所有项
tounicode — 用户函数,应在Tkinter应用程序使用其他而非ASCII编码时返回适当的Unicode字符串。默认情况下 tounicode = lambda text: unicode(text).encode('utf-8')。感谢 Jan Böcker 提供了解决方案。
SVGdocument
不接收任何参数,返回SVG文档;使用标准xml.dom.minidom模块中提供的类。
saveall(filename, canvas, items=None, margin=10, tounicode=None)
辅助函数:将整个画布或选定的项目保存到SVG文件中,设置适当的尺寸和视口;还可以设置额外的margin。
warnings(mode)
模块可能会发出警告。默认情况下,它使用自定义函数将消息打印到标准错误。您可以通过调用方法canvasvg.warnings(mode)来更改此设置,该方法有三个可能的值
canvasvg.PYTHON — 使用标准模块warnings中的warn;
canvasvg.MODULE — 使用自定义函数;
canvasvg.NONE — 不打印任何消息。
configure(*flags)
模块可能会使用<path>或<line>标签来表示段。默认情况下,它使用<line>。可以通过调用canvasvg.configure(*flags)来全局更改行为,并使用以下值之一
canvasvg.SEGMENT_TO_LINE — 使用<line>标签;
canvasvg.SEGMENT_TO_PATH — 使用<path>标签。
变更日志
以下是移动到Github之前的重大变更。
2013-07-23 — 支持“原始”平滑线条(由Marc Culler贡献,plink的作者,网址为plink)
2011-02-20 — python3兼容性
2011-01-25 — 更新saveall:使用项目列表导出
2008-11-08 — 添加tounicode,可选参数
2006-12-01 — 首次发布
项目详情
canvasvg-1.0.5.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d98d5ff84a511a3bf777b5899cbc8fb780a2bfbbafb54fbb18b49ac5cf2732a8 |
|
MD5 | ef6b286343e63bbf61786305ecec3f03 |
|
BLAKE2b-256 | 739df5ab2a9c0784d9de7bc1c35f81813b50c557cf9f7b39dd27747abb6388d8 |