PICtor PIC image format

From Wikipedia, the free encyclopedia
Jump to: navigation, search

PICtor is an image file format developed by John Bridges, the principal author of PCPaint, the first Paintbrush program for the PC. It was also the native file format for Pictor Paint and GRASP (multimedia authoring software) (also by Bridges) and became the first widely accepted DOS imaging standard.[1]

Typical file format[edit]

The PICtor format is a device-independent raster image format; the file header stores information about the display hardware (screen resolution, color depth and palette information, bit planes and so on) separately from the actual image information, allowing the image to be properly transferred and displayed on computer systems with different hardware. PIC files commonly stored palette-indexed images ranging from 2 or 4 colors to 16 and 256 colors, although the format has been extended to record true-color (24-bit) images as well.

Although it is device-independent, the PIC format also contains additional information about the device that it was created on, which sometimes leads PCPaint Pictor PIC files to be described as a "device-dependent" format. The encoding of a PIC file is also optimized for decoding quickly onto the native device that it was created-on.

PICtor image data is compressed using an advanced form of encoding, and a parent-child blockbased algorithm which collapses series of consecutive bytes with identical colors into an encoded child block within a parent block while also allowing non-consecutive bytes to be included as raw data within the same parent block.

As the file is processed during decoding, the child blocks in each parent block are unpacked either into an off-screen buffer if not displaying in native mode, or directly into the display adapter if in native mode (which results in quicker unpacking).

References[edit]

  1. ^ James D. Murray, William vanRyper (1996-04). "Encyclopedia of Graphics File Formats, Second Edition". O'Reilly. ISBN 1-56592-161-5. Retrieved 2014-03-07.  Check date values in: |date= (help)

External links[edit]