**tksvg features SVG image for tcl8.6** With [http://core.tcl-lang.org/tips/doc/trunk/tip/507.md%|%TIP507%|%], [svg]-support was added to tk8.7+. To get the same support on tk 8.6, use package [https://github.com/auriocus/tksvg%|%tksvg%|%] by Auriocus. **ChangeLog** %|Version|Date|Text|% &|0.1||Initial Version by Christian Werner|& &|0.2||Ported to TCL 8.6 by Ariocous|& &|0.3|2019-09-16|[https://core.tcl-lang.org/tips/doc/trunk/tip/545.md%|%TIP545%|%]: Added options "-scaletoheight" and "-scaletowidth". Added binary distribution|& **Download** The download is contained in the release area: [https://github.com/auriocus/tksvg/releases]. It contains currently the source and binaries for Linux (64 bit), Mac and Windows (32 and 64 bit). Note: Windows binaries contained a bug (function fabsf was mapped to abs, not fabs), which was corrected shortly after the release. The released binaries contain the fixed version. **Distributions** The following distributions contain TkSVG: * [BAWT] **Packages using tksvg** The following packages use tksvg to scale images: * [ttk::checkbutton as toggle switch display] * [awdark ttk theme] * [awlight ttk theme] **Compilation** ***Windows x86 (32 bit)*** tksvg 0.3 compilation succeeded using ms-vc6 with the following commands: ======none vcvars.bat setenv /RETAIL cd win nmake -f makefile.vc install TCLDIR=c:\test\tcl8.6.9 INSTALLDIR=c:\test\tknano ====== ***Windows x64 (64 bit)*** tksvg 0.3 compilation succeeded using SDK2003SP1 with the following commands: ======none setenv /XP64 /RETAIL cd win nmake -f makefile.vc TCLDIR=c:\test\tcl_x64_build\tcl8.6.9 TKDIR=c:\test\tcl_x64_build\tk8.6.9 nmake -f makefile.vc install TCLDIR=c:\test\tcl_x64_build\tcl8.6.9 TKDIR=c:\test\tcl_x64_build\tk8.6.9 INSTALLDIR=c:\test\tcl_x64_build\tksvg_64 ====== ***Linux (32 and 64 bit)*** ======none ./configure --with-tcl=/home/oehhar/test/tcl8.6.9 --with-tk=/home/oehhar/test/tk8.6.9 --exec-prefix=/home/oehhar/test/tksvg0.3 make ====== **Usage for buttons** Create an image with an svg image with the given height of 16 pixels: ======tcl % image create photo i1 -file c:/myimage/test.svg -format {svg -scaletoheight 16} % pack [button .b1 -image i1] ====== Now the button is scaled to 20 pixels in runtime: ======tcl % i1 configure -format {svg -scaletoheight 20} ====== The button image is scaled. Attention: the image file must be available, as it is read from disk again. So, if you remove the file c:/myimage/test.svg, the command will fail. If this is an issue, load the image first into a variable and pass the data with the "-data" option to the image creation command. **Text items in svg** The used svg implementation "svgnano" does not support text items. I paint my icons using [www.inkscape.org%|%InkScape%|%] as follows: To display text, first use the text tool to print the text. Then go to the path menu and select "transform object to path" with the shortcut "Shift-Control-C". After save, the text is visible within tclnano. <> Graphics