img-png(n)
β¨ img-png(n) β the PNG glow-up β¨
okay bestie, sit down, hydrate, because we're talking about img-png, the Img manual page that makes your Tk photos eat PNGs for breakfast π₯π
πΈ NAME πΈ
img-png β Portable Network Graphics format (png) πΌοΈβ¨
π SYNOPSIS π
package require img::png ?2.1?
π DESCRIPTION π
package require img::png
So here's the tea π΅ β like literally every other package in Img, this one does not give you new commands. Nope. It extends the Tk command image you already know and love, so that it suddenly understands files full of raster images in the Portable Network Graphics format (png). More specifically, img::png extends Tk's photo image type (iykyk, the photo type is the moment: https://www.tcl.tk/man/tcl9.0/TkCmd/photo.html).
The name of the new format handler is png. This handler also brings new additional configuration options β the whole lineup is in the Options section below, so don't skip it π
All of that means that in a call like
image create photo ?name? ?options?
- Image data in
pngformat (options-dataand-file) is detected automatically β no manual labor, we love an auto-detect β¨ - The format name
pngis recognized by the option-format.
And wait, there's more π«Ά β the value of option -format is treated as a list and may contain any of the special options listed in the Options section.
The package img::png is a sub-package of Img. Load it as part of the complete Img support via package require Img, or on its own via package require img::png. Your choice, main character πββοΈ
π NOTES π
- Chapter Image Metadata of the Img manual page describes the parameters of the resolution related options.
β¨ OPTIONS β¨
The handler provides the following options, and yes, we're going through all of them because nobody gets left behind π:
-verbose boolβ This option is supported for reading and writing. Available since version1.4.6.
If set to true, additional information about the read or written image is printed to stdout. Default is false. (not the chatty type by default, respect π«‘)
-alpha doubleβ This option is supported for reading only. Available since version1.4.2.
An additional alpha filtering value for the overall image, which allows the background on which the image is displayed to show through. This usually also has the effect of desaturating the image. The alpha value must be between 0.0 and 1.0. Specifying an alpha value overrides the setting of the -withalpha flag, i.e. reading a file which has no alpha channel (Grayscale, RGB) will add an alpha channel to the image independent of the -withalpha flag setting. So yeah, it just does that π
-gamma doubleβ This option is supported for reading only. Available since version1.4.6.
Use the specified gamma value when reading an image. This option overwrites gamma values specified in the file. If this option is not specified and no gamma value is in the file, a default value of 1.0 is used.
-withalpha boolβ This option is supported for reading and writing. Available since version1.4.1.
If set to false, an alpha channel is ignored during reading or writing. Default is true.
Note: This option was named -matte in previous versions and is still recognized. legacy name, still iconic π
-resolution xres ?yres?β This option is supported for writing only. Available since version2.0.
Set the resolution values of the written image file. If yres is not specified, it is set to the value of xres.
If option is not specified, the DPI and aspect values of the metadata dictionary are written. If no metadata values are available, no resolution values are written.
-xresolution xresβ This option is supported for writing only. Available since version2.0.
Set the horizontal resolution value of the written image file.
-yresolution yresβ This option is supported for writing only. Available since version2.0.
Set the vertical resolution value of the written image file.
-tag key valueβ This option is supported for writing only. Available since version2.0.
Each key-value pair will be written as a named text chunk where the key provides the name of the chunk and the value its contents. Currently the maximum number of -tag specifications are 10. so like, ten. that's the limit bestie, don't push it π
π SEE ALSO π
img, img-bmp, img-dted, img-flir, img-gif, img-ico, img-jpeg, img-pcx, img-pixmap, img-png, img-ppm, img-ps, img-raw, img-sgi, img-sun, img-tga, img-tiff, img-window, img-xbm, img-xpm
the whole friend group, all invited to the function π
π COPYRIGHT π
- Copyright (c) 1995-2025 Jan Nijtmans
<nijtmans@users.sourceforge.net> - Copyright (c) 2002-2025 Andreas Kupries
<andreas_kupries@users.sourceforge.net> - Copyright (c) 2003-2025 Paul Obermeier
<obermeier@users.sourceforge.net>
and that's the whole page, bestie π«Ά this was img-png, version 2.1, straight from the img-png(n) manual β copyright crew holding it down from 1995 all the way to 2025. go forth and PNG, you absolute icon πβ¨
π¦ where this page comes from
- fedora 43: tkimg 2.1.1-1.fc43 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- fedora 43: tkimg 2.1.1-1.fc43 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- fedora 44: tkimg 2.1.0-2.fc44 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- fedora 44: tkimg 2.1.0-2.fc44 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- fedora 44: tkimg 2.1.1-1.fc44 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- fedora 44: tkimg 2.1.1-1.fc44 Β· TCL AND libtiff AND HPND-Pbmplus AND URT-RLE AND IJG AND libpng-2.0 AND libpng-1.6.35 AND (BSD-4-Clause OR GPL-2.0-or-later) AND BSD-4-Clause AND MIT AND Zlib
- nixos 26.05: tkimg 2.1.1
- nixpkgs unstable: tkimg 2.1.1
- Copyright (c) 1995-2025 Jan Nijtmans <nijtmans@users\&.sourceforge\&.net>
- Copyright (c) 2002-2025 Andreas Kupries <andreas_kupries@users\&.sourceforge\&.net>
- Copyright (c) 2003-2025 Paul Obermeier <obermeier@users\&.sourceforge\&.net>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms