Alien-FreeImage
view release on metacpan or search on metacpan
src/Source/Metadata/FreeImageTag.h view on Meta::CPAN
// ==========================================================
// Tag manipulation functions
//
// Design and implementation by
// - Hervé Drolon <drolon@infonie.fr>
//
// This file is part of FreeImage 3
//
// COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY
// OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES
// THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE
// OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED
// CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT
// THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY
// SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL
// PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER
// THIS DISCLAIMER.
//
// Use at your own risk!
// ==========================================================
#ifndef FREEIMAGETAG_H
#define FREEIMAGETAG_H
// ==========================================================
// Exif JPEG tags
// ==========================================================
// ----------------------------------------------------------
// TIFF Rev. 6.0 Attribute Information Used in Exif
// ----------------------------------------------------------
// Tags relating to image data structure
#define TAG_IMAGE_WIDTH 0x0100
#define TAG_IMAGE_HEIGHT 0x0101
#define TAG_BITS_PER_SAMPLE 0x0102
#define TAG_COMPRESSION 0x0103
#define TAG_PHOTOMETRIC_INTERPRETATION 0x0106
#define TAG_ORIENTATION 0x0112
#define TAG_SAMPLES_PER_PIXEL 0x0115
#define TAG_PLANAR_CONFIGURATION 0x011C
#define TAG_YCBCR_SUBSAMPLING 0x0212
#define TAG_YCBCR_POSITIONING 0x0213
#define TAG_X_RESOLUTION 0x011A
#define TAG_Y_RESOLUTION 0x011B
#define TAG_RESOLUTION_UNIT 0x0128
// LibTIF compression modes
#define TAG_COMPRESSION_NONE 1 /* dump mode */
#define TAG_COMPRESSION_CCITTRLE 2 /* CCITT modified Huffman RLE */
#define TAG_COMPRESSION_CCITTFAX3 3 /* CCITT Group 3 fax encoding */
#define TAG_COMPRESSION_CCITT_T4 3 /* CCITT T.4 (TIFF 6 name) */
#define TAG_COMPRESSION_CCITTFAX4 4 /* CCITT Group 4 fax encoding */
#define TAG_COMPRESSION_CCITT_T6 4 /* CCITT T.6 (TIFF 6 name) */
#define TAG_COMPRESSION_LZW 5 /* Lempel-Ziv & Welch */
#define TAG_COMPRESSION_OJPEG 6 /* !6.0 JPEG */
#define TAG_COMPRESSION_JPEG 7 /* %JPEG DCT compression */
#define TAG_COMPRESSION_NEXT 32766 /* NeXT 2-bit RLE */
#define TAG_COMPRESSION_CCITTRLEW 32771 /* #1 w/ word alignment */
#define TAG_COMPRESSION_PACKBITS 32773 /* Macintosh RLE */
#define TAG_COMPRESSION_THUNDERSCAN 32809 /* ThunderScan RLE */
/* codes 32895-32898 are reserved for ANSI IT8 TIFF/IT <dkelly@apago.com) */
#define TAG_COMPRESSION_IT8CTPAD 32895 /* IT8 CT w/padding */
#define TAG_COMPRESSION_IT8LW 32896 /* IT8 Linework RLE */
#define TAG_COMPRESSION_IT8MP 32897 /* IT8 Monochrome picture */
#define TAG_COMPRESSION_IT8BL 32898 /* IT8 Binary line art */
/* compression codes 32908-32911 are reserved for Pixar */
#define TAG_COMPRESSION_PIXARFILM 32908 /* Pixar companded 10bit LZW */
#define TAG_COMPRESSION_PIXARLOG 32909 /* Pixar companded 11bit ZIP */
#define TAG_COMPRESSION_DEFLATE 32946 /* Deflate compression */
#define TAG_COMPRESSION_ADOBE_DEFLATE 8 /* Deflate compression,
as recognized by Adobe */
/* compression code 32947 is reserved for Oceana Matrix <dev@oceana.com> */
#define TAG_COMPRESSION_DCS 32947 /* Kodak DCS encoding */
#define TAG_COMPRESSION_JBIG 34661 /* ISO JBIG */
#define TAG_COMPRESSION_SGILOG 34676 /* SGI Log Luminance RLE */
#define TAG_COMPRESSION_SGILOG24 34677 /* SGI Log 24-bit packed */
#define TAG_COMPRESSION_JP2000 34712 /* Leadtools JPEG2000 */
#define TAG_COMPRESSION_LZMA 34925 /* LZMA2 */
// Tags relating to recording offset
#define TAG_STRIP_OFFSETS 0x0111
#define TAG_ROWS_PER_STRIP 0x0116
#define TAG_STRIP_BYTE_COUNTS 0x0117
#define TAG_JPEG_INTERCHANGE_FORMAT 0x0201
#define TAG_JPEG_INTERCHANGE_FORMAT_LENGTH 0x0202
// Tags relating to image data characteristics
#define TAG_TRANSFER_FUNCTION 0x012D
#define TAG_WHITE_POINT 0x013E
#define TAG_PRIMARY_CHROMATICITIES 0x013F
#define TAG_YCBCR_COEFFICIENTS 0x0211
#define TAG_REFERENCE_BLACK_WHITE 0x0214
// Other tags
#define TAG_DATETIME 0x0132
#define TAG_IMAGE_DESCRIPTION 0x010E
#define TAG_MAKE 0x010F
#define TAG_MODEL 0x0110
#define TAG_SOFTWARE 0x0131
#define TAG_ARTIST 0x013B
#define TAG_COPYRIGHT 0x8298
// ----------------------------------------------------------
// Exif IFD Attribute Information
// ----------------------------------------------------------
// Tags relating to version
#define TAG_EXIF_VERSION 0x9000
#define TAG_FLASHPIX_VERSION 0xA000
// Tag relating to image data characteristics
#define TAG_COLOR_SPACE 0xA001
// Tags relating to image configuration
#define TAG_COMPONENTS_CONFIGURATION 0x9101
#define TAG_COMPRESSED_BITS_PER_PIXEL 0x9102
#define TAG_PIXEL_X_DIMENSION 0xA002
#define TAG_PIXEL_Y_DIMENSION 0xA003
// Tags relating to user information
#define TAG_MARKER_NOTE 0x927C
#define TAG_USER_COMMENT 0x9286
// Tag relating to related file information
#define TAG_RELATED_SOUND_FILE 0xA004
// Tags relating to date and time
#define TAG_DATETIME_ORIGINAL 0x9003
#define TAG_DATETIME_DIGITIZED 0x9004
#define TAG_SUBSECOND_TIME 0x9290
#define TAG_SUBSECOND_TIME_ORIGINAL 0x9291
#define TAG_SUBSECOND_TIME_DIGITIZED 0x9292
// Tags relating to picture-taking conditions
#define TAG_EXPOSURE_TIME 0x829A
#define TAG_FNUMBER 0x829D
#define TAG_EXPOSURE_PROGRAM 0x8822
#define TAG_SPECTRAL_SENSITIVITY 0x8824
#define TAG_ISO_SPEED_RATINGS 0x8827
#define TAG_OECF 0x8828
#define TAG_SHUTTER_SPEED_VALUE 0x9201
#define TAG_APERTURE_VALUE 0x9202
#define TAG_BRIGHTNESS_VALUE 0x9203
( run in 0.523 second using v1.01-cache-2.11-cpan-9bca49b1385 )