Tkinter canvas to SVG exporter

Added on:1.12.2006
Update:2011-02-20 — python3 compatibility
Update:2011-01-25 — update saveall: use list of items to export
Update:2008-11-08 — added tounicode, optional argument

This module provides function convert that convert all or selected items placed on given canvas object.

Supported items:

Unsupported items:

Stipples are not applied.

Public functions

convert(document, canvas, items=None, tounicode=None)

  • document — SVG document, object that support DOM, i.e. provides createElement method etc. (function SVGdocument can be used to get such object)
  • canvas — Tkinter.Canvas object
  • items — list of objects to convert; if None then all items are converted
  • tounicode — user function that should return proper unicode string if Tkinter app use other then ASCII encoding. By default tounicode = lambda text: unicode(text).encode('utf-8'). Thanks to Jan Böcker who provided solution.

SVGdocument

Takes no arguments, returns SVG document; class provided in standard xml.dom.minidom module is used.

saveall(filename, canvas, items=None, margin=10, tounicode=None)

Helper function: saves whole canvas or selected items in SVG file, sets proper dimensions, and viewport; additional margin can be set.

Downloads

License & Author