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

Full Name Exchangeable image file format (EXIF-JPEG)
Format ID IG_FORMAT_EXIF_JPEG = 71
File Extension(s) *.jpg, *.xif
Data Type Raster image
Data Encoding Binary
Color Profile Support Read, Write
Multi-Page Support No
Alpha Channel Support Read/write
ImageGear Platforms Support WIN32, WIN64, Unix, Unix64, MAC

ImageGear Supported Versions:

ImageGear Supported Features:

ImageGear Read Support:

ImageGear Write Support:

1) RGBA saving is disabled by default. Set JPEG-JFIF control parameter SAVE_ALLOW_RGBA to TRUE to enable it.

2) CMYK saving is enabled by default. You can disable it by setting JPEG-JFIF control parameter SAVE_ALLOW_CMYK to FALSE.

ImageGear Filter Control Parameters:

Filter Control Parameter Type Default Value Available Values Description
FLASHPIX_READY AT_BOOL FALSE TRUE, FALSE If TRUE the image will be saved with 64 interoperability, allowing lossless conversion to FlashPix format.
SAVE_JFIF_SEGMENT AT_BOOL FALSE TRUE, FALSE If TRUE the JFIF segment will be saved with image
SAVE_THUMBNAIL AT_BOOL TRUE TRUE, FALSE If TRUE the thumbnail will be saved with image
THUMBNAIL_WIDTH UINT 160 Any positive value Gets/Sets thumbnail width. Actual dimensions of the saved thumbnail will be adjusted to fit into rectangle specified by the THUMBNAIL_WIDTH and THUMBNAIL_HEIGHT parameters, preserving the ratio of image width and height.
THUMBNAIL_HEIGHT UINT 120 Any positive value Gets/Sets thumbnail height. Actual dimensions of the saved thumbnail will be adjusted to fit into rectangle specified by the THUMBNAIL_WIDTH and THUMBNAIL_HEIGHT parameters, preserving the ratio of image width and height.
THUMBNAIL_COMPRESSED AT_BOOL TRUE TRUE, FALSE For JPEG compressed EXIF. If TRUE the thumbnail will be JPEG compressed
LOAD_SCALE_DENOM UINT 1 1, 2, 4, 8 If this parameter is set to any other than default value, ImageGear loads reduced version of the image, width and height of which are scaled by 1/load_scale_denom. This mode can be used for image preview, especially for those images that do not have embedded thumbnails, or where embedded thumbnails are smaller than desired. This mode allows you to make loading process 2-4 times faster.*

* LOAD_SCALE_DENOM parameter affects the following formats: JFIF-JPEG, EXIF-JPEG. It does not affect TIFF-JPEG and other formats containing JPEG stream. Only Lossy and Progressive compressed images are supported. It affects all image loading functions and all image info functions.

The following control parameters of JFIF-JPEG format filter also affect EXIF-JPEG:

Comments:

The EXIF file format is based on existing formats. There are two kinds of EXIF format: compressed and uncompressed. Compressed EXIF is recorded in JPEG format with EXIF header saved in APP1 and APP2 marker segments. The APP2 segment is used when recording FlashPix extensions.

Uncompressed EXIF is recorded in TIFF Rev. 6.0 formats with two pages - the first is the main image, the second is a thumbnail (if it present). The EXIF header data is stored in TIFF 6.0 format for both compressed and uncompressed EXIF and include EXIF information (that is necessary) and GPS information (that is optional). Information specific to the camera system and not defined in TIFF is stored in private tags registered for EXIF. ImageGear EXIF support allows you to retrieve this information and send it to an application level and vice versa.

The EXIF image file specification also specifies the method for recording thumbnails. The reason for using the TIFF Rev. 6.0 tag format in the compressed file APP1 segment is to facilitate exchange of attribute data between EXIF compressed and uncompressed files.

Although the standard only allows uncompressed and JPEG-compressed EXIF images, and RGB color space, there are EXIF images that use other compressions and color spaces. In a sense, these images can be considered as JPEGs or TIFFs with additional EXIF metadata. ImageGear supports reading of such non-standard images, as well as writing of EXIF images with some non-standard compressions and color spaces.

References Used

Digital Still Camera Image File Format Standard (Exif) Version 2.0, Nov 1997, Japan Electronic Industry Development Association.

Digital Still Camera Image File Format Standard (Exif) Version 2.1, June 1998, Japan Electronic Industry Development Association.