# pamtowinicon

Updated: 12 April 2013
Table Of Contents

## NAME

pamtowinicon - convert Netpbm PAM images to a Microsoft Windows icon file

## SYNOPSIS

pamtowinicon [-pngthreshold=threshold] [-truetransparent] [-verbose] [pam_file]

All options can be abbreviated to their shortest unique prefix. You may use two hyphens instead of one to designate an option. You may use either white space or equals signs between an option name and its value.

## DESCRIPTION

This program is part of Netpbm.

pamtowinicon reads an RGB_ALPHA Netpbm PAM file and converts it to a Microsoft Windows icon file.

The output goes to Standard Output.

The input is a multi-image PAM file; each image becomes an icon in the output file. If you have input images in multiple files, you can simply combine them with cat and pass the result to pamtowinicon.

## OPTIONS

In addition to the options common to all programs based on libnetpbm (most notably -quiet, see Common Options), pamtowinicon recognizes the following command line options:

-pngthreshold=threshold
  pamtowinicon encodes images with resolutions above or equal threshold by threshold as PNG by running pnmtopng. Other images it encodes using the more traditional BMP format.

  When the program uses PNG encoding for a 5-channel PAM with separate AND mask (see below), it discards the AND mask. Because PNG has always had the ability to specify transparency, the Windows icon format does not provide for a separate and mask when the icon is encoded in PNG.

  The default value for threshold is 128.

-truetransparent
  Make all pixels outside the opaque area black, avoiding inversion and other effects on the background of the image (see Windows Icons).
-verbose
  Print more messages

## IMAGES

pamtowinicon reads a (multi-image) Netpbm PAM file as input and outputs an single Windows icon file containing those images.

The images in the icon file are in the same order as in the PAM input.

### PAM Input

pamtowinicon interprets the PAM images as follows, based on the number of channels.

channels | image
--- | ---
1 | fully opaque grayscale image
2 | grayscale image with transparency channel
3 | fully opaque color image
4 | color image with transparency channel
5 | color image with transparency channel and additional AND mask

The tuple types of the PAMs are irrelevant.

### AND Mask

The so-called "AND mask" is a special feature of Microsoft Windows icons. It is required for all BMP encoded images. At the first sight, the AND mask is a 1-bit transparency channel, but it is also used for e.g. shading the icon while dragging. See Windows Icons for details.

If there is no explicit AND mask, but transparency data in the input image, pamtowinicon sets the AND mask to opaque where the sample in the transparency channel is below maxval, and to transparent elsewhere.

If no transparency data is present in the input image, pamtowinicon assumes the whole image to be fully opaque.

### BMP Output

When BMP encoding an image, pamtowinicon tries to use the most compact BI_RGB format allowed for icon images with a color depth of eight bits per channel.

pamtowinicon generates neither 16-bit BI_RGB nor BI_BITFIELDS BMP encoded images, even if the maxval of the input PAM is not 255.

## SEE ALSO

- winicontopam
- ppmtowinicon
- pam
- Windows Icons

For information on the PNG format, see http://schaik.com/png.

## HISTORY

pamtowinicon was new in Netpbm 10.63 (June 2013). It obsoleted ppmtowinicon by providing more function and conforming better to Netpbm conventions.

## AUTHOR

Copyright (C) 2013 by Ludolf Holzheid.

Translated to Netpbm coding style by Bryan Henderson.

## Table Of Contents

- SYNOPSIS
- DESCRIPTION
- OPTIONS
- IMAGES
  - PAM Input
  - AND Mask
  - BMP Output
- SEE ALSO
- HISTORY
- AUTHOR