img-bmp - Img

[ Img Table Of Contents | Img Index ]

img-bmp(n) 1.4 "Img"


img-bmp - Img, Windows Bitmap Format (bmp)


  • package require Tk
  • package require img::bmp ?1.4?


The package img::bmp is a sub-package of Img. It can be loaded as a part of the complete Img support, via package require Img, or on its own, via package require img::bmp.

Like all packages of Img it does not provide new commands, but extends the existing Tk command image so that it supports files containing raster images in the Windows Bitmap Format (bmp). More specifically img::bmp extends Tk's photo image type.

The name of the new format handler is bmp. This handler provides new additional configuration options. See section BMP OPTIONS for more detailed explanations.

All of the above means that in a call like

image create photo ?name? ?options?
  1. Image data in bmp format (options -data and -file) is detected automatically.

  2. The format name bmp is recognized by the option -format. In addition the value for the option is treated as list and may contain any of the special options listed in section BMP OPTIONS.


The handler provides an option to influence the writing of a BMP image.

-resolution res

The display resulation and/or aspect ratio property of the outputted bmp file may be set using this option. The default values are an x and y resolution of 74 dpi. res is a list of 2 or 3 elements and may have one of the following formats. The values xres, yres and unit are specified after the formats.

res = xres unit

Set the same resolution for x and y. Example: Write image with a resolution of 300dpi:

img write out.bmp -format {bmp -resolution {300 i}}
res = xres yres

Set the aspect ratio only. The x resolution remains to the default value 74dpi, as the bmp format does not allow to specify the aspect ratio only. The y resolution is set to 74*yres/xres. Example: Write image with an aspect ratio of 1/3:

img write out.bmp -format {bmp -resolution {1 3}}
res = xres yres unit

Set an independent resolution for x and y direction. Example: Write image with a resolution of x=300dpi and y=150dpi:

img write out.bmp -format {bmp -resolution {300 100 i}}

The used parameters are:

float xres (input)

The output resolution in x direction as a float number.

float yres (input)

The output resolution in x direction as a float number.

string unit (input)

Unit of the given resolution numbers similar to Tk_GetPixel. Possible units are:


pixel per centimeter.


pixel per meter.


pixel per inch.


pixel per inch/72 (Printer points).

Copyright © 2015 for compilation: ActiveState