Skip to main content

SVG support for PhotoImage in Tk 8.6

Project description

tksvg for Python's Tkinter

Build status Build Status

tksvg is a package for Tcl/Tk that adds support for SVG image files. Tkinter makes use of Tcl/Tk under the hood, and thus can benefit from this addition. Note that SVG support has been included in Tk 8.7 and thus this package can be made obsolete in the future when Python gets distributed with Tk 8.7. This repository is merely a repackaging of the tksvg library for Python with a modified build system.

Building and installation

This package makes use of the same build system as gttk and other Tcl C-extensions with CMake. This means that on both Windows and Linux you will need a working CMake installation that can find the Tcl development files. If you wish to build with Visual Studio, you can build with the build system of the upstream.

Linux

Adapt the commands to your specific distribution. The commands given here assume Ubuntu 20.04.

sudo apt install cmake build-essential tcl-dev tk-dev python3-tk
python -m pip install scikit-build
python setup.py install

Windows

Due to the rolling-release type distribution of MSYS, no up-to-date build instructions are provided in this file. Please refer to the AppVeyor build configuration in .appveyor.yml to derive the latest build instructions. Some general pointers:

  • The commands assume that you have a working MSYS2 environment. If you do not have this, you'll have to set it up to make use of the Windows build system.
  • Dependencies of the compiled binaries are detected and found using Dependencies. Make sure it is available before running the setup.py install command.
  • The AppVeyor configuration may have to work around bugs in MSYS that you might not encounter if you're using a different version. If you're confused by how the dependencies are installed, simply refer to the list found in setup.py.

Usage

Using the library has been made as similar as possible to using a normal tk.PhotoImage. Simply create an SvgImage instance and the tksvg library will automatically be loaded for you.

import tkinter as tk
import tksvg

window = tk.Tk()
svg_image = tksvg.SvgImage(file="tests/orb.svg")
label = tk.Label(image=svg_image)
label.pack()
window.mainloop()

License & Copyright

This repository merely provides a version of the original tksvg for Python's Tkinter. The package is available under the BSD-like Tcl License. The build system (setup.py, .appveyor.yml and .travis.yml) are available under the terms of GNU GPLv3, as any changes to these should be shared under permissive terms so as to preserve the possibility of building these packages.

Copyright (C) 2002-2004 Maxim Shemanarev http://antigrain.com
Copyright (c) 2013-14 Mikko Mononen memon@inside.org
Copyright (c) 2018 Christian Gollwitzer auriocus@gmx.de
Copyright (c) 2018 Christian Werner https://www.androwish.org/
Copyright (c) 2018 Rene Zaumseil r.zaumseil@freenet.de
Copyright (c) 2020 Juliette Monsel
Copyright (c) 2021 RedFantom <redfantom@outlook.com>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tksvg-0.7.2-cp37-cp37m-manylinux2014_x86_64.whl (50.4 kB view details)

Uploaded CPython 3.7m

tksvg-0.7.2-cp36-cp36m-manylinux2014_x86_64.whl (50.4 kB view details)

Uploaded CPython 3.6m

File details

Details for the file tksvg-0.7.2-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: tksvg-0.7.2-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 50.4 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for tksvg-0.7.2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 263f0329913544b03ce075e7eea6e24de1774cfa7e4d240fc767d89ad75dee92
MD5 c8cee1e4e04636996d65014d587f81f7
BLAKE2b-256 e11bd34ea3b5e7d759dc44f68d6eb5db73915e92d835c498ca40faafeecc5394

See more details on using hashes here.

File details

Details for the file tksvg-0.7.2-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: tksvg-0.7.2-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 50.4 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for tksvg-0.7.2-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1c17643ba3532aa18176281650314b5db470c9443a1c4b76b39010ebd2de084e
MD5 c5006d6b81f40f9b6d9c2a1cc6a5991c
BLAKE2b-256 a4bb40948a7f622a90cc5079104c8f29206853cdee160eeb0a84035269404c81

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page