ImageGear for C and C++ on Linux v19.10 - Updated
MAC
User Guide > File Formats and Compressions > File Formats > File Formats Reference > MAC

Full Name MAC (Macintosh Paint)
Format ID IG_FORMAT_MAC = 24
File Extension(s) *.mac
Data Type Raster Image
Data Encoding Binary
Color Profile Support No
Multi-Page Support No
Alpha Channel Support No
ImageGear Platforms Support WIN32, WIN64, MAC, UNIX

ImageGear Supported Versions:

Version 2.0 1989

ImageGear Supported Features:

ImageGear Read Support:

ImageGear Write Support:

None

ImageGear Filter Control Parameters:

None

Comments:

Originally developed to store MacPaint graphics files, this format is now supported by many Macintosh applications. It is also exportable to the PC platform. It is always monochrome, and always has a fixed size of 576 pixels by 720 lines. The data, when uncompressed, is always 51,840 bytes in size.

Because this is a Macintosh format, it is organized as "forked" data. Each file consists of two forks, a "resource fork" and a "data fork". There is no code associated with this graphics format. The resource fork is always empty, and is easily merged together with the data fork when the file is exported to a PC platform.

The MacPaint data begins with a version number. If set to a value of 2, it indicates that paint patterns appear as the next structure. There are 38 possible patterns. These are generally not used, unless the file is being exported from one paint program to another.

The bitmap data begins at an offset of 512 bytes from the beginning of the file. The data is always compressed using the "PackBits" RLE compression scheme. The compressed data is stored in variable-length strips. See the description of RLE compression in the ImageGear Supported Compressions Reference section.

It the MacPaint file has been exported to a PC platform it contains a structure called the MacBinary header. This helps in reconstructing the resource fork if the file is returned to the Macintosh environment. A field in the MacBinary header holds the size of the fork. Other information includes the position of the file in the window, the version of the MacBinary header (I or II), the time and data of creation, and a SecondHeadLength field intended for future expansion of the MacPaint format should it require a secondary header.

References Used

Kay, David C. and John R. Levine. Graphics File Formats. Windcrest Books, 1992.

Murray, James D. and William vanRyper. Encyclopedia of Graphics File Formats. Sebastopol, CA: O'Reilly & Associates, Inc., 1994.