ExifInterface
public class ExifInterface
This is a class for reading and writing Exif tags in various image file formats.
Supported for reading: JPEG, PNG, WebP, HEIC, DNG, CR2, NEF, NRW, ARW, RW2, ORF, PEF, SRW, RAF, AVIF (on API 31+).
Supported for writing: JPEG, PNG, WebP.
XMP Support
This class can read raw XMP data from the supported image file formats.XMP data can be stored within Exif data (under tag 700), but many of the formats also define a separate storage location for XMP. ExifInterface handles this ambiguity as follows:
- JPEG
- The XMP spec part 3 section 3.3.2 forbids the XMP tag (700) being present in the Exif segment of JPEG files (i.e. XMP should always be in a separate APP1 segment).
- If XMP is present in both Exif and separate segments, the XMP from the Exif segment is returned from
getAttributeBytesand modifications to the XMP withsetAttributeare written back to the XMP in the Exif segment, the XMP in the separate segment is preserved unmodified. This is contrary to the spec described above (which suggests the standalone XMP should be preferred over the XMP in the Exif segment). - If XMP is not present in either location, and is added with
setAttribute, it is written as a standalone segment, in line with the spec described above.
- HEIC &AVIF
- If XMP is present in both Exif and separate segments, the XMP from the separate segment is returned from
getAttributeBytes.
- If XMP is present in both Exif and separate segments, the XMP from the separate segment is returned from
Summary
Constants |
|
|---|---|
static final short |
The constant used by |
static final short |
The constant used by |
static final int[] |
The constant used by |
static final int[] |
The constant used by |
static final int[] |
The constant used by |
static final int |
The constant used by |
static final int |
COLOR_SPACE_UNCALIBRATED = 65535The constant used by |
static final short |
CONTRAST_HARD = 2The constant used by |
static final short |
CONTRAST_NORMAL = 0The constant used by |
static final short |
CONTRAST_SOFT = 1The constant used by |
static final int |
DATA_DEFLATE_ZIP = 8The constant used by |
static final int |
The constant used by |
static final int |
DATA_JPEG = 6The constant used by |
static final int |
The constant used by |
static final int |
DATA_LOSSY_JPEG = 34892The constant used by |
static final int |
DATA_PACK_BITS_COMPRESSED = 32773The constant used by |
static final int |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
FILE_SOURCE_DSC = 3The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
FLAG_FLASH_FIRED = 1The flag used by |
static final short |
FLAG_FLASH_MODE_AUTO = 24The flag used by |
static final short |
The flag used by |
static final short |
The flag used by |
static final short |
The flag used by |
static final short |
The flag used by |
static final short |
The flag used by |
static final short |
The flag used by |
static final short |
FORMAT_CHUNKY = 1The constant used by |
static final short |
FORMAT_PLANAR = 2The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final String |
GPS_DIRECTION_MAGNETIC = "M"The constant used by GPS attributes to denote the direction is magnetic direction. |
static final String |
GPS_DIRECTION_TRUE = "T"The constant used by GPS attributes to denote the direction is true direction. |
static final String |
GPS_DISTANCE_KILOMETERS = "K"The constant used by |
static final String |
GPS_DISTANCE_MILES = "M"The constant used by |
static final String |
The constant used by |
static final String |
GPS_MEASUREMENT_2D = "2"The constant used by |
static final String |
GPS_MEASUREMENT_3D = "3"The constant used by |
static final short |
The constant used by |
static final String |
The constant used by |
static final String |
The constant used by |
static final short |
The constant used by |
static final String |
The constant used by |
static final String |
GPS_SPEED_KNOTS = "N"The constant used by |
static final String |
GPS_SPEED_MILES_PER_HOUR = "M"The constant used by |
static final String |
LATITUDE_NORTH = "N"The constant used by GPS latitude-related tags to denote the latitude is North latitude. |
static final String |
LATITUDE_SOUTH = "S"The constant used by GPS latitude-related tags to denote the latitude is South latitude. |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
LIGHT_SOURCE_D50 = 23The constant used by |
static final short |
LIGHT_SOURCE_D55 = 20The constant used by |
static final short |
LIGHT_SOURCE_D65 = 21The constant used by |
static final short |
LIGHT_SOURCE_D75 = 22The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
LIGHT_SOURCE_OTHER = 255The constant used by |
static final short |
LIGHT_SOURCE_SHADE = 11The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final String |
LONGITUDE_EAST = "E"The constant used by GPS longitude-related tags to denote the longitude is East longitude. |
static final String |
LONGITUDE_WEST = "W"The constant used by GPS longitude-related tags to denote the longitude is West longitude. |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
METERING_MODE_OTHER = 255The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final int |
Indicates the image is left right reversed mirror. |
static final int |
Indicates the image is upside down mirror, it can also be represented by flip horizontally firstly and rotate 180 degree clockwise. |
static final int |
|
static final int |
Indicates the image is rotated by 180 degree clockwise. |
static final int |
Indicates the image is rotated by 270 degree clockwise. |
static final int |
Indicates the image is rotated by 90 degree clockwise. |
static final int |
Indicates the image is flipped about top-left <--> bottom-right axis, it can also be represented by flip horizontally firstly and rotate 270 degree clockwise. |
static final int |
Indicates the image is flipped about top-right <--> bottom-left axis, it can also be represented by flip horizontally firstly and rotate 90 degree clockwise. |
static final int |
|
static final int |
The constant used by |
static final int |
The constant used by |
static final int |
The constant used by |
static final int |
The constant used by |
static final int |
The constant used by |
static final int |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used to denote resolution unit as centimeters. |
static final short |
The constant used to denote resolution unit as inches. |
static final short |
SATURATION_HIGH = 0The constant used by |
static final short |
SATURATION_LOW = 0The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
SHARPNESS_HARD = 2The constant used by |
static final short |
SHARPNESS_NORMAL = 0The constant used by |
static final short |
SHARPNESS_SOFT = 1The constant used by |
static final int |
Constant used to indicate that the input stream contains only Exif data. |
static final int |
Constant used to indicate that the input stream contains the full image data. |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final String |
TAG_APERTURE_VALUE = "ApertureValue"The lens aperture. |
static final String |
TAG_ARTIST = "Artist"This tag records the name of the camera owner, photographer or image creator. |
static final String |
TAG_BITS_PER_SAMPLE = "BitsPerSample"The number of bits per image component. |
static final String |
TAG_BODY_SERIAL_NUMBER = "BodySerialNumber"This tag records the serial number of the body of the camera that was used in photography as an ASCII string. |
static final String |
TAG_BRIGHTNESS_VALUE = "BrightnessValue"The value of brightness. |
static final String |
TAG_CAMARA_OWNER_NAME = "CameraOwnerName"This field is deprecated. Use |
static final String |
TAG_CAMERA_OWNER_NAME = "CameraOwnerName"This tag records the owner of a camera used in photography as an ASCII string. |
static final String |
TAG_CFA_PATTERN = "CFAPattern"Indicates the color filter array (CFA) geometric pattern of the image sensor when a one-chip color area sensor is used. |
static final String |
TAG_COLOR_SPACE = "ColorSpace"The color space information tag is always recorded as the color space specifier. |
static final String |
TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration"Information specific to compressed data. |
static final String |
TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"Information specific to compressed data. |
static final String |
TAG_COMPRESSION = "Compression"The compression scheme used for the image data. |
static final String |
TAG_CONTRAST = "Contrast"This tag indicates the direction of contrast processing applied by the camera when the image was shot. |
static final String |
TAG_COPYRIGHT = "Copyright"Copyright information. |
static final String |
TAG_CUSTOM_RENDERED = "CustomRendered"This tag indicates the use of special processing on image data, such as rendering geared to output. |
static final String |
TAG_DATETIME = "DateTime"The date and time of image creation. |
static final String |
TAG_DATETIME_DIGITIZED = "DateTimeDigitized"The date and time when the image was stored as digital data. |
static final String |
TAG_DATETIME_ORIGINAL = "DateTimeOriginal"The date and time when the original image data was generated. |
static final String |
TAG_DEFAULT_CROP_SIZE = "DefaultCropSize"Type is int. |
static final String |
TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription"This tag indicates information on the picture-taking conditions of a particular camera model. |
static final String |
TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio"This tag indicates the digital zoom ratio when the image was shot. |
static final String |
TAG_DNG_VERSION = "DNGVersion"Type is int. |
static final String |
TAG_EXIF_VERSION = "ExifVersion"The version of this standard supported. |
static final String |
TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue"The exposure bias. |
static final String |
TAG_EXPOSURE_INDEX = "ExposureIndex"Indicates the exposure index selected on the camera or input device at the time the image is captured. |
static final String |
TAG_EXPOSURE_MODE = "ExposureMode"This tag indicates the exposure mode set when the image was shot. |
static final String |
TAG_EXPOSURE_PROGRAM = "ExposureProgram"The class of the program used by the camera to set exposure when the picture is taken. |
static final String |
TAG_EXPOSURE_TIME = "ExposureTime"Exposure time, given in seconds. |
static final String |
TAG_FILE_SOURCE = "FileSource"Indicates the image source. |
static final String |
TAG_FLASH = "Flash"This tag indicates the status of flash when the image was shot. |
static final String |
TAG_FLASHPIX_VERSION = "FlashpixVersion"The Flashpix format version supported by a FPXR file. |
static final String |
TAG_FLASH_ENERGY = "FlashEnergy"Indicates the strobe energy at the time the image is captured, as measured in Beam Candle Power Seconds (BCPS). |
static final String |
TAG_FOCAL_LENGTH = "FocalLength"The actual focal length of the lens, in mm. |
static final String |
TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm"This tag indicates the equivalent focal length assuming a 35mm film camera, in mm. |
static final String |
TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit"Indicates the unit for measuring |
static final String |
TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution"Indicates the number of pixels in the image width (X) direction per |
static final String |
TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution"Indicates the number of pixels in the image height (Y) direction per |
static final String |
TAG_F_NUMBER = "FNumber"The F number. |
static final String |
TAG_GAIN_CONTROL = "GainControl"This tag indicates the degree of overall image gain adjustment. |
static final String |
TAG_GAMMA = "Gamma"Indicates the value of coefficient gamma. |
static final String |
TAG_GPS_ALTITUDE = "GPSAltitude"Indicates the altitude based on the reference in |
static final String |
TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"Indicates the altitude used as the reference altitude. |
static final String |
TAG_GPS_AREA_INFORMATION = "GPSAreaInformation"A character string recording the name of the GPS area. |
static final String |
TAG_GPS_DATESTAMP = "GPSDateStamp"A character string recording date and time information relative to UTC (Coordinated Universal Time). |
static final String |
TAG_GPS_DEST_BEARING = "GPSDestBearing"Indicates the bearing to the destination point. |
static final String |
TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef"Indicates the reference used for giving the bearing to the destination point. |
static final String |
TAG_GPS_DEST_DISTANCE = "GPSDestDistance"Indicates the distance to the destination point. |
static final String |
TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef"Indicates the unit used to express the distance to the destination point. |
static final String |
TAG_GPS_DEST_LATITUDE = "GPSDestLatitude"Indicates the latitude of the destination point. |
static final String |
TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef"Indicates whether the latitude of the destination point is north or south latitude. |
static final String |
TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude"Indicates the longitude of the destination point. |
static final String |
TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef"Indicates whether the longitude of the destination point is east or west longitude. |
static final String |
TAG_GPS_DIFFERENTIAL = "GPSDifferential"Indicates whether differential correction is applied to the GPS receiver. |
static final String |
TAG_GPS_DOP = "GPSDOP"Indicates the GPS DOP (data degree of precision). |
static final String |
TAG_GPS_H_POSITIONING_ERROR = "GPSHPositioningError"This tag indicates horizontal positioning errors in meters. |
static final String |
TAG_GPS_IMG_DIRECTION = "GPSImgDirection"ndicates the direction of the image when it was captured. |
static final String |
TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef"Indicates the reference for giving the direction of the image when it is captured. |
static final String |
TAG_GPS_LATITUDE = "GPSLatitude"Indicates the latitude. |
static final String |
TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"Indicates whether the latitude is north or south latitude. |
static final String |
TAG_GPS_LONGITUDE = "GPSLongitude"Indicates the longitude. |
static final String |
TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"Indicates whether the longitude is east or west longitude. |
static final String |
TAG_GPS_MAP_DATUM = "GPSMapDatum"Indicates the geodetic survey data used by the GPS receiver. |
static final String |
TAG_GPS_MEASURE_MODE = "GPSMeasureMode"Indicates the GPS measurement mode. |
static final String |
TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod"A character string recording the name of the method used for location finding. |
static final String |
TAG_GPS_SATELLITES = "GPSSatellites"Indicates the GPS satellites used for measurements. |
static final String |
TAG_GPS_SPEED = "GPSSpeed"Indicates the speed of GPS receiver movement. |
static final String |
TAG_GPS_SPEED_REF = "GPSSpeedRef"Indicates the unit used to express the GPS receiver speed of movement. |
static final String |
TAG_GPS_STATUS = "GPSStatus"Indicates the status of the GPS receiver when the image is recorded. 'A' means measurement is in progress, and 'V' means the measurement is interrupted. |
static final String |
TAG_GPS_TIMESTAMP = "GPSTimeStamp"Indicates the time as UTC (Coordinated Universal Time). |
static final String |
TAG_GPS_TRACK = "GPSTrack"Indicates the direction of GPS receiver movement. |
static final String |
TAG_GPS_TRACK_REF = "GPSTrackRef"Indicates the reference for giving the direction of GPS receiver movement. |
static final String |
TAG_GPS_VERSION_ID = "GPSVersionID"Indicates the version of GPS Info IFD. |
static final String |
TAG_IMAGE_DESCRIPTION = "ImageDescription"An ASCII string giving the title of the image. |
static final String |
TAG_IMAGE_LENGTH = "ImageLength"The number of rows of image data. |
static final String |
TAG_IMAGE_UNIQUE_ID = "ImageUniqueID"This tag indicates an identifier assigned uniquely to each image. |
static final String |
TAG_IMAGE_WIDTH = "ImageWidth"The number of columns of image data, equal to the number of pixels per row. |
static final String |
TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex"Indicates the identification of the Interoperability rule. |
static final String |
TAG_ISO_SPEED = "ISOSpeed"This tag indicates the ISO speed value of a camera or input device that is defined in ISO 12232. |
static final String |
TAG_ISO_SPEED_LATITUDE_YYY = "ISOSpeedLatitudeyyy"This tag indicates the ISO speed latitude yyy value of a camera or input device that is defined in ISO 12232. |
static final String |
TAG_ISO_SPEED_LATITUDE_ZZZ = "ISOSpeedLatitudezzz"This tag indicates the ISO speed latitude zzz value of a camera or input device that is defined in ISO 12232. |
static final String |
TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings"This field is deprecated. Use |
static final String |
TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat"The offset to the start byte (SOI) of JPEG compressed thumbnail data. |
static final String |
TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength"The number of bytes of JPEG compressed thumbnail data. |
static final String |
TAG_LENS_MAKE = "LensMake"This tag records the lens manufacturer as an ASCII string. |
static final String |
TAG_LENS_MODEL = "LensModel"This tag records the lens’s model name and model number as an ASCII string. |
static final String |
TAG_LENS_SERIAL_NUMBER = "LensSerialNumber"This tag records the serial number of the interchangeable lens that was used in photography as an ASCII string. |
static final String |
TAG_LENS_SPECIFICATION = "LensSpecification"This tag notes minimum focal length, maximum focal length, minimum F number in the minimum focal length, and minimum F number in the maximum focal length, which are specification information for the lens that was used in photography. |
static final String |
TAG_LIGHT_SOURCE = "LightSource"The kind of light source. |
static final String |
TAG_MAKE = "Make"The manufacturer of the recording equipment. |
static final String |
TAG_MAKER_NOTE = "MakerNote"A tag for manufacturers of Exif/DCF writers to record any desired information. |
static final String |
TAG_MAX_APERTURE_VALUE = "MaxApertureValue"The smallest F number of the lens. |
static final String |
TAG_METERING_MODE = "MeteringMode"The metering mode. |
static final String |
TAG_MODEL = "Model"The model name or model number of the equipment. |
static final String |
TAG_NEW_SUBFILE_TYPE = "NewSubfileType"Type is int. |
static final String |
TAG_OECF = "OECF"Indicates the Opto-Electric Conversion Function (OECF) specified in ISO 14524. |
static final String |
TAG_OFFSET_TIME = "OffsetTime"A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTime tag. |
static final String |
TAG_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTimeDigitized tag. |
static final String |
TAG_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTimeOriginal tag. |
static final String |
TAG_ORF_ASPECT_FRAME = "AspectFrame"Type is int. |
static final String |
TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength"Type is int. |
static final String |
TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart"Type is int. |
static final String |
TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage"Type is undefined. |
static final String |
TAG_ORIENTATION = "Orientation"The image orientation viewed in terms of rows and columns. |
static final String |
TAG_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity"This tag indicates the sensitivity of the camera or input device when the image was shot. |
static final String |
TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation"The pixel composition. |
static final String |
TAG_PIXEL_X_DIMENSION = "PixelXDimension"Information specific to compressed data. |
static final String |
TAG_PIXEL_Y_DIMENSION = "PixelYDimension"Information specific to compressed data. |
static final String |
TAG_PLANAR_CONFIGURATION = "PlanarConfiguration"Indicates whether pixel components are recorded in chunky or planar format. |
static final String |
TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities"The chromaticity of the three primary colors of the image. |
static final String |
TAG_RECOMMENDED_EXPOSURE_INDEX = "RecommendedExposureIndex"This tag indicates the recommended exposure index value of a camera or input device defined in ISO 12232. |
static final String |
TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite"The reference black point value and reference white point value. |
static final String |
TAG_RELATED_SOUND_FILE = "RelatedSoundFile"This tag is used to record the name of an audio file related to the image data. |
static final String |
TAG_RESOLUTION_UNIT = "ResolutionUnit"The unit for measuring |
static final String |
TAG_ROWS_PER_STRIP = "RowsPerStrip"The number of rows per strip. |
static final String |
TAG_RW2_ISO = "ISO"Type is int. |
static final String |
TAG_RW2_JPG_FROM_RAW = "JpgFromRaw"Type is undefined. |
static final String |
TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder"Type is int. |
static final String |
TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder"Type is int. |
static final String |
TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder"Type is int. |
static final String |
TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder"Type is int. |
static final String |
TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel"The number of components per pixel. |
static final String |
TAG_SATURATION = "Saturation"This tag indicates the direction of saturation processing applied by the camera when the image was shot. |
static final String |
TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType"This tag indicates the type of scene that was shot. |
static final String |
TAG_SCENE_TYPE = "SceneType"Indicates the type of scene. |
static final String |
TAG_SENSING_METHOD = "SensingMethod"Indicates the image sensor type on the camera or input device. |
static final String |
TAG_SENSITIVITY_TYPE = "SensitivityType"This tag indicates which one of the parameters of ISO12232 is |
static final String |
TAG_SHARPNESS = "Sharpness"This tag indicates the direction of sharpness processing applied by the camera when the image was shot. |
static final String |
TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue"Shutter speed. |
static final String |
TAG_SOFTWARE = "Software"This tag records the name and version of the software or firmware of the camera or image input device used to generate the image. |
static final String |
TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse"This tag records the camera or input device spatial frequency table and SFR values in the direction of image width, image height, and diagonal direction, as specified in ISO 12233. |
static final String |
TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity"Indicates the spectral sensitivity of each channel of the camera used. |
static final String |
TAG_STANDARD_OUTPUT_SENSITIVITY = "StandardOutputSensitivity"This tag indicates the standard output sensitivity value of a camera or input device defined in ISO 12232. |
static final String |
TAG_STRIP_BYTE_COUNTS = "StripByteCounts"The total number of bytes in each strip. |
static final String |
TAG_STRIP_OFFSETS = "StripOffsets"For each strip, the byte offset of that strip. |
static final String |
TAG_SUBFILE_TYPE = "SubfileType"Type is int. |
static final String |
TAG_SUBJECT_AREA = "SubjectArea"This tag indicates the location and area of the main subject in the overall scene. |
static final String |
TAG_SUBJECT_DISTANCE = "SubjectDistance"The distance to the subject, given in meters. |
static final String |
TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange"This tag indicates the distance to the subject. |
static final String |
TAG_SUBJECT_LOCATION = "SubjectLocation"Indicates the location of the main subject in the scene. |
static final String |
TAG_SUBSEC_TIME = "SubSecTime"A tag used to record fractions of seconds for |
static final String |
TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized"A tag used to record fractions of seconds for |
static final String |
TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal"A tag used to record fractions of seconds for |
static final String |
TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength" |
static final String |
TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth" |
static final String |
TAG_TRANSFER_FUNCTION = "TransferFunction"A transfer function for the image, described in tabular style. |
static final String |
TAG_USER_COMMENT = "UserComment"A tag for Exif users to write keywords or comments on the image besides those in |
static final String |
TAG_WHITE_BALANCE = "WhiteBalance"This tag indicates the white balance mode set when the image was shot. |
static final String |
TAG_WHITE_POINT = "WhitePoint"The chromaticity of the white point of the image. |
static final String |
TAG_XMP = "Xmp"Type is byte[]. |
static final String |
TAG_X_RESOLUTION = "XResolution"The number of pixels per |
static final String |
TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients"The matrix coefficients for transformation from RGB to YCbCr image data. |
static final String |
TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning"The position of chrominance components in relation to the luminance component. |
static final String |
TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling"The sampling ratio of chrominance components in relation to the luminance component. |
static final String |
TAG_Y_RESOLUTION = "YResolution"The number of pixels per |
static final int |
This field is deprecated. Use |
static final int |
This field is deprecated. Use |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
static final short |
The constant used by |
Public constructors |
|---|
ExifInterface(@NonNull FileDescriptor fileDescriptor)Reads Exif tags from the specified image file descriptor. |
ExifInterface(@NonNull File file)Reads Exif tags from the specified image file. |
ExifInterface(@NonNull String filename)Reads Exif tags from the specified image file. |
ExifInterface(@NonNull InputStream inputStream)Reads Exif tags from the specified image input stream. |
ExifInterface(@NonNull InputStream inputStream, int streamType)Reads Exif tags from the specified image input stream based on the stream type. |
Public methods |
|
|---|---|
void |
Flips the image horizontally. |
void |
Flips the image vertically. |
double |
getAltitude(double defaultValue)Return the altitude in meters. |
@Nullable String |
getAttribute(@NonNull String tag)Returns the value of the specified tag or |
@Nullable byte[] |
getAttributeBytes(@NonNull String tag)Returns the raw bytes for the value of the requested tag inside the image file, or |
double |
getAttributeDouble(@NonNull String tag, double defaultValue)Returns the double value of the tag that is specified as rational or contains a double-formatted value. |
int |
getAttributeInt(@NonNull String tag, int defaultValue)Returns the integer value of the specified tag. |
@Nullable long[] |
getAttributeRange(@NonNull String tag)Returns the offset and length of the requested tag inside the image file, or |
@Nullable Long |
Returns number of milliseconds since 1970-01-01 00:00:00 UTC. |
@Nullable double[] |
Gets the latitude and longitude values. |
boolean |
This method is deprecated. Use |
int |
Returns the rotation degrees for the current image orientation. |
@Nullable byte[] |
Returns the JPEG compressed thumbnail inside the image file, or |
@Nullable Bitmap |
Creates and returns a Bitmap object of the thumbnail image based on the byte array and the thumbnail compression value, or |
@Nullable byte[] |
Returns the thumbnail bytes inside the image file, regardless of the compression type of the thumbnail image. |
@Nullable long[] |
Returns the offset and length of thumbnail inside the image file, or |
boolean |
hasAttribute(@NonNull String tag)Returns true if the image file has the given attribute defined. |
boolean |
Returns true if the image file has a thumbnail. |
boolean |
Returns if the current image orientation is flipped. |
static boolean |
isSupportedMimeType(@NonNull String mimeType)Returns whether ExifInterface currently supports reading data from the specified mime type or not. |
boolean |
Returns true if thumbnail image is JPEG Compressed, or false if either thumbnail image does not exist or thumbnail image is uncompressed. |
void |
Resets the |
void |
rotate(int degree)Rotates the image by the given degree clockwise. |
void |
Save the tag data into the original image file. |
void |
setAltitude(double altitude)Sets the altitude in meters. |
void |
setAttribute(@NonNull String tag, @Nullable String value)Sets the value of the specified tag. |
void |
setGpsInfo(@Nullable Location location)Sets the GPS-related information. |
void |
setLatLong(double latitude, double longitude)Sets the latitude and longitude values. |
Constants
ALTITUDE_ABOVE_SEA_LEVEL
public static final short ALTITUDE_ABOVE_SEA_LEVEL = 0
The constant used by TAG_GPS_ALTITUDE_REF to denote the altitude is above sea level.
ALTITUDE_BELOW_SEA_LEVEL
public static final short ALTITUDE_BELOW_SEA_LEVEL = 1
The constant used by TAG_GPS_ALTITUDE_REF to denote the altitude is below sea level.
BITS_PER_SAMPLE_GREYSCALE_1
public static final int[] BITS_PER_SAMPLE_GREYSCALE_1
The constant used by TAG_BITS_PER_SAMPLE. See JEITA CP-3451C Spec Section 4, Differences from Bilevel Images
BITS_PER_SAMPLE_GREYSCALE_2
public static final int[] BITS_PER_SAMPLE_GREYSCALE_2
The constant used by TAG_BITS_PER_SAMPLE. See JEITA CP-3451C Spec Section 4, Differences from Bilevel Images
BITS_PER_SAMPLE_RGB
public static final int[] BITS_PER_SAMPLE_RGB
The constant used by TAG_BITS_PER_SAMPLE. See JEITA CP-3451C Spec Section 6, Differences from Palette Color Images
COLOR_SPACE_S_RGB
public static final int COLOR_SPACE_S_RGB = 1
The constant used by TAG_COLOR_SPACE to denote sRGB color space.
COLOR_SPACE_UNCALIBRATED
public static final int COLOR_SPACE_UNCALIBRATED = 65535
The constant used by TAG_COLOR_SPACE to denote Uncalibrated.
CONTRAST_HARD
public static final short CONTRAST_HARD = 2
The constant used by TAG_CONTRAST to denote hard contrast.
CONTRAST_NORMAL
public static final short CONTRAST_NORMAL = 0
The constant used by TAG_CONTRAST to denote normal contrast.
CONTRAST_SOFT
public static final short CONTRAST_SOFT = 1
The constant used by TAG_CONTRAST to denote soft contrast.
DATA_DEFLATE_ZIP
public static final int DATA_DEFLATE_ZIP = 8
The constant used by TAG_COMPRESSION, see DNG Specification 1.4.0.0. Section 3, Compression
DATA_HUFFMAN_COMPRESSED
public static final int DATA_HUFFMAN_COMPRESSED = 2
The constant used by TAG_COMPRESSION to denote the image is huffman compressed.
DATA_JPEG
public static final int DATA_JPEG = 6
The constant used by TAG_COMPRESSION to denote the image is JPEG.
DATA_JPEG_COMPRESSED
public static final int DATA_JPEG_COMPRESSED = 7
The constant used by TAG_COMPRESSION, see DNG Specification 1.4.0.0. Section 3, Compression
DATA_LOSSY_JPEG
public static final int DATA_LOSSY_JPEG = 34892
The constant used by TAG_COMPRESSION, see DNG Specification 1.4.0.0. Section 3, Compression
DATA_PACK_BITS_COMPRESSED
public static final int DATA_PACK_BITS_COMPRESSED = 32773
The constant used by TAG_COMPRESSION to denote the image is pack-bits compressed.
DATA_UNCOMPRESSED
public static final int DATA_UNCOMPRESSED = 1
The constant used by TAG_COMPRESSION to denote the image is not compressed.
EXPOSURE_MODE_AUTO
public static final short EXPOSURE_MODE_AUTO = 0
The constant used by TAG_EXPOSURE_MODE to denote the exposure mode is Auto.
EXPOSURE_MODE_AUTO_BRACKET
public static final short EXPOSURE_MODE_AUTO_BRACKET = 2
The constant used by TAG_EXPOSURE_MODE to denote the exposure mode is Auto bracket.
EXPOSURE_MODE_MANUAL
public static final short EXPOSURE_MODE_MANUAL = 1
The constant used by TAG_EXPOSURE_MODE to denote the exposure mode is Manual.
EXPOSURE_PROGRAM_ACTION
public static final short EXPOSURE_PROGRAM_ACTION = 6
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Action program (biased toward fast shutter speed).
EXPOSURE_PROGRAM_APERTURE_PRIORITY
public static final short EXPOSURE_PROGRAM_APERTURE_PRIORITY = 3
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Aperture priority.
EXPOSURE_PROGRAM_CREATIVE
public static final short EXPOSURE_PROGRAM_CREATIVE = 5
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Creative program (biased toward depth of field).
EXPOSURE_PROGRAM_LANDSCAPE_MODE
public static final short EXPOSURE_PROGRAM_LANDSCAPE_MODE = 8
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Landscape mode (for landscape photos with the background in focus).
EXPOSURE_PROGRAM_MANUAL
public static final short EXPOSURE_PROGRAM_MANUAL = 1
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Manual.
EXPOSURE_PROGRAM_NORMAL
public static final short EXPOSURE_PROGRAM_NORMAL = 2
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Normal.
EXPOSURE_PROGRAM_NOT_DEFINED
public static final short EXPOSURE_PROGRAM_NOT_DEFINED = 0
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is not defined.
EXPOSURE_PROGRAM_PORTRAIT_MODE
public static final short EXPOSURE_PROGRAM_PORTRAIT_MODE = 7
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Portrait mode (for closeup photos with the background out of focus).
EXPOSURE_PROGRAM_SHUTTER_PRIORITY
public static final short EXPOSURE_PROGRAM_SHUTTER_PRIORITY = 4
The constant used by TAG_EXPOSURE_PROGRAM to denote exposure program is Shutter priority.
FILE_SOURCE_DSC
public static final short FILE_SOURCE_DSC = 3
The constant used by TAG_FILE_SOURCE to denote the source is DSC.
FILE_SOURCE_OTHER
public static final short FILE_SOURCE_OTHER = 0
The constant used by TAG_FILE_SOURCE to denote the source is other.
FILE_SOURCE_REFLEX_SCANNER
public static final short FILE_SOURCE_REFLEX_SCANNER = 2
The constant used by TAG_FILE_SOURCE to denote the source is scanner of reflex type.
FILE_SOURCE_TRANSPARENT_SCANNER
public static final short FILE_SOURCE_TRANSPARENT_SCANNER = 1
The constant used by TAG_FILE_SOURCE to denote the source is scanner of transparent type.
FLAG_FLASH_FIRED
public static final short FLAG_FLASH_FIRED = 1
The flag used by TAG_FLASH to indicate whether the flash is fired.
FLAG_FLASH_MODE_AUTO
public static final short FLAG_FLASH_MODE_AUTO = 24
The flag used by TAG_FLASH to indicate the camera's flash mode is Auto.
FLAG_FLASH_MODE_COMPULSORY_FIRING
public static final short FLAG_FLASH_MODE_COMPULSORY_FIRING = 8
The flag used by TAG_FLASH to indicate the camera's flash mode is Compulsory flash firing.
FLAG_FLASH_MODE_COMPULSORY_SUPPRESSION
public static final short FLAG_FLASH_MODE_COMPULSORY_SUPPRESSION = 16
The flag used by TAG_FLASH to indicate the camera's flash mode is Compulsory flash suppression.
FLAG_FLASH_NO_FLASH_FUNCTION
public static final short FLAG_FLASH_NO_FLASH_FUNCTION = 32
The flag used by TAG_FLASH to indicate no flash function is present.
FLAG_FLASH_RED_EYE_SUPPORTED
public static final short FLAG_FLASH_RED_EYE_SUPPORTED = 64
The flag used by TAG_FLASH to indicate red-eye reduction is supported.
FLAG_FLASH_RETURN_LIGHT_DETECTED
public static final short FLAG_FLASH_RETURN_LIGHT_DETECTED = 6
The flag used by TAG_FLASH to indicate strobe return light is detected.
FLAG_FLASH_RETURN_LIGHT_NOT_DETECTED
public static final short FLAG_FLASH_RETURN_LIGHT_NOT_DETECTED = 4
The flag used by TAG_FLASH to indicate strobe return light is not detected.
FORMAT_CHUNKY
public static final short FORMAT_CHUNKY = 1
The constant used by TAG_PLANAR_CONFIGURATION to denote Chunky format.
FORMAT_PLANAR
public static final short FORMAT_PLANAR = 2
The constant used by TAG_PLANAR_CONFIGURATION to denote Planar format.
GAIN_CONTROL_HIGH_GAIN_DOWN
public static final short GAIN_CONTROL_HIGH_GAIN_DOWN = 4
The constant used by TAG_GAIN_CONTROL to denote high gain down.
GAIN_CONTROL_HIGH_GAIN_UP
public static final short GAIN_CONTROL_HIGH_GAIN_UP = 2
The constant used by TAG_GAIN_CONTROL to denote high gain up.
GAIN_CONTROL_LOW_GAIN_DOWN
public static final short GAIN_CONTROL_LOW_GAIN_DOWN = 3
The constant used by TAG_GAIN_CONTROL to denote low gain down.
GAIN_CONTROL_LOW_GAIN_UP
public static final short GAIN_CONTROL_LOW_GAIN_UP = 1
The constant used by TAG_GAIN_CONTROL to denote low gain up.
GAIN_CONTROL_NONE
public static final short GAIN_CONTROL_NONE = 0
The constant used by TAG_GAIN_CONTROL to denote none gain adjustment.
GPS_DIRECTION_MAGNETIC
public static final String GPS_DIRECTION_MAGNETIC = "M"
The constant used by GPS attributes to denote the direction is magnetic direction.
GPS_DIRECTION_TRUE
public static final String GPS_DIRECTION_TRUE = "T"
The constant used by GPS attributes to denote the direction is true direction.
GPS_DISTANCE_KILOMETERS
public static final String GPS_DISTANCE_KILOMETERS = "K"
The constant used by TAG_GPS_DEST_DISTANCE_REF to denote the distance unit is kilometers.
GPS_DISTANCE_MILES
public static final String GPS_DISTANCE_MILES = "M"
The constant used by TAG_GPS_DEST_DISTANCE_REF to denote the distance unit is miles.
GPS_DISTANCE_NAUTICAL_MILES
public static final String GPS_DISTANCE_NAUTICAL_MILES = "N"
The constant used by TAG_GPS_DEST_DISTANCE_REF to denote the distance unit is nautical miles.
GPS_MEASUREMENT_2D
public static final String GPS_MEASUREMENT_2D = "2"
The constant used by TAG_GPS_MEASURE_MODE to denote GPS measurement is 2-dimensional.
GPS_MEASUREMENT_3D
public static final String GPS_MEASUREMENT_3D = "3"
The constant used by TAG_GPS_MEASURE_MODE to denote GPS measurement is 3-dimensional.
GPS_MEASUREMENT_DIFFERENTIAL_CORRECTED
public static final short GPS_MEASUREMENT_DIFFERENTIAL_CORRECTED = 1
The constant used by TAG_GPS_DIFFERENTIAL to denote differential correction is applied.
GPS_MEASUREMENT_INTERRUPTED
public static final String GPS_MEASUREMENT_INTERRUPTED = "V"
The constant used by TAG_GPS_STATUS to denote GPS measurement is interrupted.
GPS_MEASUREMENT_IN_PROGRESS
public static final String GPS_MEASUREMENT_IN_PROGRESS = "A"
The constant used by TAG_GPS_STATUS to denote GPS measurement is in progress.
GPS_MEASUREMENT_NO_DIFFERENTIAL
public static final short GPS_MEASUREMENT_NO_DIFFERENTIAL = 0
The constant used by TAG_GPS_DIFFERENTIAL to denote no differential correction is applied.
GPS_SPEED_KILOMETERS_PER_HOUR
public static final String GPS_SPEED_KILOMETERS_PER_HOUR = "K"
The constant used by TAG_GPS_SPEED_REF to denote the speed unit is kilometers per hour.
GPS_SPEED_KNOTS
public static final String GPS_SPEED_KNOTS = "N"
The constant used by TAG_GPS_SPEED_REF to denote the speed unit is knots.
GPS_SPEED_MILES_PER_HOUR
public static final String GPS_SPEED_MILES_PER_HOUR = "M"
The constant used by TAG_GPS_SPEED_REF to denote the speed unit is miles per hour.
LATITUDE_NORTH
public static final String LATITUDE_NORTH = "N"
The constant used by GPS latitude-related tags to denote the latitude is North latitude.
LATITUDE_SOUTH
public static final String LATITUDE_SOUTH = "S"
The constant used by GPS latitude-related tags to denote the latitude is South latitude.
LIGHT_SOURCE_CLOUDY_WEATHER
public static final short LIGHT_SOURCE_CLOUDY_WEATHER = 10
The constant used by TAG_LIGHT_SOURCE to denote light source is Cloudy weather.
LIGHT_SOURCE_COOL_WHITE_FLUORESCENT
public static final short LIGHT_SOURCE_COOL_WHITE_FLUORESCENT = 14
The constant used by TAG_LIGHT_SOURCE to denote light source is Cool white fluorescent (W 3800 - 4500K).
LIGHT_SOURCE_D50
public static final short LIGHT_SOURCE_D50 = 23
The constant used by TAG_LIGHT_SOURCE to denote light source is D50.
LIGHT_SOURCE_D55
public static final short LIGHT_SOURCE_D55 = 20
The constant used by TAG_LIGHT_SOURCE to denote light source is D55.
LIGHT_SOURCE_D65
public static final short LIGHT_SOURCE_D65 = 21
The constant used by TAG_LIGHT_SOURCE to denote light source is D65.
LIGHT_SOURCE_D75
public static final short LIGHT_SOURCE_D75 = 22
The constant used by TAG_LIGHT_SOURCE to denote light source is D75.
LIGHT_SOURCE_DAYLIGHT
public static final short LIGHT_SOURCE_DAYLIGHT = 1
The constant used by TAG_LIGHT_SOURCE to denote light source is Daylight.
LIGHT_SOURCE_DAYLIGHT_FLUORESCENT
public static final short LIGHT_SOURCE_DAYLIGHT_FLUORESCENT = 12
The constant used by TAG_LIGHT_SOURCE to denote light source is Daylight fluorescent (D 5700 - 7100K).
LIGHT_SOURCE_DAY_WHITE_FLUORESCENT
public static final short LIGHT_SOURCE_DAY_WHITE_FLUORESCENT = 13
The constant used by TAG_LIGHT_SOURCE to denote light source is Day white fluorescent (N 4600 - 5500K).
LIGHT_SOURCE_FINE_WEATHER
public static final short LIGHT_SOURCE_FINE_WEATHER = 9
The constant used by TAG_LIGHT_SOURCE to denote light source is Fine weather.
LIGHT_SOURCE_FLASH
public static final short LIGHT_SOURCE_FLASH = 4
The constant used by TAG_LIGHT_SOURCE to denote light source is Flash.
LIGHT_SOURCE_FLUORESCENT
public static final short LIGHT_SOURCE_FLUORESCENT = 2
The constant used by TAG_LIGHT_SOURCE to denote light source is Fluorescent.
LIGHT_SOURCE_ISO_STUDIO_TUNGSTEN
public static final short LIGHT_SOURCE_ISO_STUDIO_TUNGSTEN = 24
The constant used by TAG_LIGHT_SOURCE to denote light source is ISO studio tungsten.
LIGHT_SOURCE_OTHER
public static final short LIGHT_SOURCE_OTHER = 255
The constant used by TAG_LIGHT_SOURCE to denote light source is other.
LIGHT_SOURCE_SHADE
public static final short LIGHT_SOURCE_SHADE = 11
The constant used by TAG_LIGHT_SOURCE to denote light source is Shade.
LIGHT_SOURCE_STANDARD_LIGHT_A
public static final short LIGHT_SOURCE_STANDARD_LIGHT_A = 17
The constant used by TAG_LIGHT_SOURCE to denote light source is Standard light A.
LIGHT_SOURCE_STANDARD_LIGHT_B
public static final short LIGHT_SOURCE_STANDARD_LIGHT_B = 18
The constant used by TAG_LIGHT_SOURCE to denote light source is Standard light B.
LIGHT_SOURCE_STANDARD_LIGHT_C
public static final short LIGHT_SOURCE_STANDARD_LIGHT_C = 19
The constant used by TAG_LIGHT_SOURCE to denote light source is Standard light C.
LIGHT_SOURCE_TUNGSTEN
public static final short LIGHT_SOURCE_TUNGSTEN = 3
The constant used by TAG_LIGHT_SOURCE to denote light source is Tungsten (incandescent light).
LIGHT_SOURCE_UNKNOWN
public static final short LIGHT_SOURCE_UNKNOWN = 0
The constant used by TAG_LIGHT_SOURCE to denote light source is unknown.
LIGHT_SOURCE_WARM_WHITE_FLUORESCENT
public static final short LIGHT_SOURCE_WARM_WHITE_FLUORESCENT = 16
The constant used by TAG_LIGHT_SOURCE to denote light source is Warm white fluorescent (L 2600 - 3250K).
LIGHT_SOURCE_WHITE_FLUORESCENT
public static final short LIGHT_SOURCE_WHITE_FLUORESCENT = 15
The constant used by TAG_LIGHT_SOURCE to denote light source is White fluorescent (WW 3250 - 3800K).
LONGITUDE_EAST
public static final String LONGITUDE_EAST = "E"
The constant used by GPS longitude-related tags to denote the longitude is East longitude.
LONGITUDE_WEST
public static final String LONGITUDE_WEST = "W"
The constant used by GPS longitude-related tags to denote the longitude is West longitude.
METERING_MODE_AVERAGE
public static final short METERING_MODE_AVERAGE = 1
The constant used by TAG_METERING_MODE to denote metering mode is Average.
METERING_MODE_CENTER_WEIGHT_AVERAGE
public static final short METERING_MODE_CENTER_WEIGHT_AVERAGE = 2
The constant used by TAG_METERING_MODE to denote metering mode is CenterWeightedAverage.
METERING_MODE_MULTI_SPOT
public static final short METERING_MODE_MULTI_SPOT = 4
The constant used by TAG_METERING_MODE to denote metering mode is MultiSpot.
METERING_MODE_OTHER
public static final short METERING_MODE_OTHER = 255
The constant used by TAG_METERING_MODE to denote metering mode is other.
METERING_MODE_PARTIAL
public static final short METERING_MODE_PARTIAL = 6
The constant used by TAG_METERING_MODE to denote metering mode is Partial.
METERING_MODE_PATTERN
public static final short METERING_MODE_PATTERN = 5
The constant used by TAG_METERING_MODE to denote metering mode is Pattern.
METERING_MODE_SPOT
public static final short METERING_MODE_SPOT = 3
The constant used by TAG_METERING_MODE to denote metering mode is Spot.
METERING_MODE_UNKNOWN
public static final short METERING_MODE_UNKNOWN = 0
The constant used by TAG_METERING_MODE to denote metering mode is unknown.
ORIENTATION_FLIP_HORIZONTAL
public static final int ORIENTATION_FLIP_HORIZONTAL = 2
Indicates the image is left right reversed mirror.
ORIENTATION_FLIP_VERTICAL
public static final int ORIENTATION_FLIP_VERTICAL = 4
Indicates the image is upside down mirror, it can also be represented by flip horizontally firstly and rotate 180 degree clockwise.
ORIENTATION_ROTATE_180
public static final int ORIENTATION_ROTATE_180 = 3
Indicates the image is rotated by 180 degree clockwise.
ORIENTATION_ROTATE_270
public static final int ORIENTATION_ROTATE_270 = 8
Indicates the image is rotated by 270 degree clockwise.
ORIENTATION_ROTATE_90
public static final int ORIENTATION_ROTATE_90 = 6
Indicates the image is rotated by 90 degree clockwise.
ORIENTATION_TRANSPOSE
public static final int ORIENTATION_TRANSPOSE = 5
Indicates the image is flipped about top-left <--> bottom-right axis, it can also be represented by flip horizontally firstly and rotate 270 degree clockwise.
ORIENTATION_TRANSVERSE
public static final int ORIENTATION_TRANSVERSE = 7
Indicates the image is flipped about top-right <--> bottom-left axis, it can also be represented by flip horizontally firstly and rotate 90 degree clockwise.
ORIGINAL_RESOLUTION_IMAGE
public static final int ORIGINAL_RESOLUTION_IMAGE = 0
The constant used by TAG_NEW_SUBFILE_TYPE. See JEITA CP-3451C Spec Section 8.
PHOTOMETRIC_INTERPRETATION_BLACK_IS_ZERO
public static final int PHOTOMETRIC_INTERPRETATION_BLACK_IS_ZERO = 1
The constant used by TAG_PHOTOMETRIC_INTERPRETATION.
PHOTOMETRIC_INTERPRETATION_RGB
public static final int PHOTOMETRIC_INTERPRETATION_RGB = 2
The constant used by TAG_PHOTOMETRIC_INTERPRETATION.
PHOTOMETRIC_INTERPRETATION_WHITE_IS_ZERO
public static final int PHOTOMETRIC_INTERPRETATION_WHITE_IS_ZERO = 0
The constant used by TAG_PHOTOMETRIC_INTERPRETATION.
PHOTOMETRIC_INTERPRETATION_YCBCR
public static final int PHOTOMETRIC_INTERPRETATION_YCBCR = 6
The constant used by TAG_PHOTOMETRIC_INTERPRETATION.
REDUCED_RESOLUTION_IMAGE
public static final int REDUCED_RESOLUTION_IMAGE = 1
The constant used by TAG_NEW_SUBFILE_TYPE. See JEITA CP-3451C Spec Section 8.
RENDERED_PROCESS_CUSTOM
public static final short RENDERED_PROCESS_CUSTOM = 1
The constant used by TAG_CUSTOM_RENDERED to denote special processing is used.
RENDERED_PROCESS_NORMAL
public static final short RENDERED_PROCESS_NORMAL = 0
The constant used by TAG_CUSTOM_RENDERED to denote no special processing is used.
RESOLUTION_UNIT_CENTIMETERS
public static final short RESOLUTION_UNIT_CENTIMETERS = 3
The constant used to denote resolution unit as centimeters.
RESOLUTION_UNIT_INCHES
public static final short RESOLUTION_UNIT_INCHES = 2
The constant used to denote resolution unit as inches.
SATURATION_HIGH
public static final short SATURATION_HIGH = 0
The constant used by TAG_SHARPNESS to denote high saturation.
SATURATION_LOW
public static final short SATURATION_LOW = 0
The constant used by TAG_SATURATION to denote low saturation.
SATURATION_NORMAL
public static final short SATURATION_NORMAL = 0
The constant used by TAG_SATURATION to denote normal saturation.
SCENE_CAPTURE_TYPE_LANDSCAPE
public static final short SCENE_CAPTURE_TYPE_LANDSCAPE = 1
The constant used by TAG_SCENE_CAPTURE_TYPE to denote the scene capture type is Landscape.
SCENE_CAPTURE_TYPE_NIGHT
public static final short SCENE_CAPTURE_TYPE_NIGHT = 3
The constant used by TAG_SCENE_CAPTURE_TYPE to denote the scene capture type is Night scene.
SCENE_CAPTURE_TYPE_PORTRAIT
public static final short SCENE_CAPTURE_TYPE_PORTRAIT = 2
The constant used by TAG_SCENE_CAPTURE_TYPE to denote the scene capture type is Portrait.
SCENE_CAPTURE_TYPE_STANDARD
public static final short SCENE_CAPTURE_TYPE_STANDARD = 0
The constant used by TAG_SCENE_CAPTURE_TYPE to denote the scene capture type is Standard.
SCENE_TYPE_DIRECTLY_PHOTOGRAPHED
public static final short SCENE_TYPE_DIRECTLY_PHOTOGRAPHED = 1
The constant used by TAG_SCENE_TYPE to denote the scene is directly photographed.
SENSITIVITY_TYPE_ISO_SPEED
public static final short SENSITIVITY_TYPE_ISO_SPEED = 3
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is ISO speed.
SENSITIVITY_TYPE_REI
public static final short SENSITIVITY_TYPE_REI = 2
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Recommended exposure index (REI).
SENSITIVITY_TYPE_REI_AND_ISO
public static final short SENSITIVITY_TYPE_REI_AND_ISO = 6
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Recommended exposure index (REI) and ISO speed.
SENSITIVITY_TYPE_SOS
public static final short SENSITIVITY_TYPE_SOS = 1
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Standard output sensitivity (SOS).
SENSITIVITY_TYPE_SOS_AND_ISO
public static final short SENSITIVITY_TYPE_SOS_AND_ISO = 5
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Standard output sensitivity (SOS) and ISO speed.
SENSITIVITY_TYPE_SOS_AND_REI
public static final short SENSITIVITY_TYPE_SOS_AND_REI = 4
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Standard output sensitivity (SOS) and recommended exposure index (REI).
SENSITIVITY_TYPE_SOS_AND_REI_AND_ISO
public static final short SENSITIVITY_TYPE_SOS_AND_REI_AND_ISO = 7
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is Standard output sensitivity (SOS) and recommended exposure index (REI) and ISO speed.
SENSITIVITY_TYPE_UNKNOWN
public static final short SENSITIVITY_TYPE_UNKNOWN = 0
The constant used by TAG_SENSITIVITY_TYPE to denote sensitivity type is unknown.
SENSOR_TYPE_COLOR_SEQUENTIAL
public static final short SENSOR_TYPE_COLOR_SEQUENTIAL = 5
The constant used by TAG_SENSING_METHOD to denote the image sensor type is Color sequential area sensor.
SENSOR_TYPE_COLOR_SEQUENTIAL_LINEAR
public static final short SENSOR_TYPE_COLOR_SEQUENTIAL_LINEAR = 8
The constant used by TAG_SENSING_METHOD to denote the image sensor type is Color sequential linear sensor.
SENSOR_TYPE_NOT_DEFINED
public static final short SENSOR_TYPE_NOT_DEFINED = 1
The constant used by TAG_SENSING_METHOD to denote the image sensor type is not defined.
SENSOR_TYPE_ONE_CHIP
public static final short SENSOR_TYPE_ONE_CHIP = 2
The constant used by TAG_SENSING_METHOD to denote the image sensor type is One-chip color area sensor.
SENSOR_TYPE_THREE_CHIP
public static final short SENSOR_TYPE_THREE_CHIP = 4
The constant used by TAG_SENSING_METHOD to denote the image sensor type is Three-chip color area sensor.
SENSOR_TYPE_TRILINEAR
public static final short SENSOR_TYPE_TRILINEAR = 7
The constant used by TAG_SENSING_METHOD to denote the image sensor type is Trilinear sensor.
SENSOR_TYPE_TWO_CHIP
public static final short SENSOR_TYPE_TWO_CHIP = 3
The constant used by TAG_SENSING_METHOD to denote the image sensor type is Two-chip color area sensor.
SHARPNESS_HARD
public static final short SHARPNESS_HARD = 2
The constant used by TAG_SHARPNESS to denote hard sharpness.
SHARPNESS_NORMAL
public static final short SHARPNESS_NORMAL = 0
The constant used by TAG_SHARPNESS to denote normal sharpness.
SHARPNESS_SOFT
public static final short SHARPNESS_SOFT = 1
The constant used by TAG_SHARPNESS to denote soft sharpness.
STREAM_TYPE_EXIF_DATA_ONLY
public static final int STREAM_TYPE_EXIF_DATA_ONLY = 1
Constant used to indicate that the input stream contains only Exif data.
The format of the Exif-only data must follow the below structure: Exif Identifier Code ("Exif\0\0") + TIFF header + IFD data See JEITA CP-3451C Section 4.5.2 and 4.5.4 specifications for more details.
STREAM_TYPE_FULL_IMAGE_DATA
public static final int STREAM_TYPE_FULL_IMAGE_DATA = 0
Constant used to indicate that the input stream contains the full image data.
The format of the image data should follow one of the image formats supported by this class.
SUBJECT_DISTANCE_RANGE_CLOSE_VIEW
public static final short SUBJECT_DISTANCE_RANGE_CLOSE_VIEW = 2
The constant used by TAG_SUBJECT_DISTANCE_RANGE to denote the subject distance range is Close view.
SUBJECT_DISTANCE_RANGE_DISTANT_VIEW
public static final short SUBJECT_DISTANCE_RANGE_DISTANT_VIEW = 3
The constant used by TAG_SUBJECT_DISTANCE_RANGE to denote the subject distance range is Distant view.
SUBJECT_DISTANCE_RANGE_MACRO
public static final short SUBJECT_DISTANCE_RANGE_MACRO = 1
The constant used by TAG_SUBJECT_DISTANCE_RANGE to denote the subject distance range is Macro.
SUBJECT_DISTANCE_RANGE_UNKNOWN
public static final short SUBJECT_DISTANCE_RANGE_UNKNOWN = 0
The constant used by TAG_SUBJECT_DISTANCE_RANGE to denote the subject distance range is unknown.
TAG_APERTURE_VALUE
public static final String TAG_APERTURE_VALUE = "ApertureValue"
The lens aperture. The unit is the APEX value.
- Tag = 37378
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_ARTIST
public static final String TAG_ARTIST = "Artist"
This tag records the name of the camera owner, photographer or image creator. The detailed format is not specified, but it is recommended that the information be written as in the example below for ease of Interoperability. When the field is left blank, it is treated as unknown.
Ex.) "Camera owner, John Smith; Photographer, Michael Brown; Image creator, Ken James"
- Tag = 315
- Type = String
- Default = None
TAG_BITS_PER_SAMPLE
public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample"
The number of bits per image component. In this standard each component of the image is 8 bits, so the value for this tag is 8. See also TAG_SAMPLES_PER_PIXEL. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it.
- Tag = 258
- Type = Unsigned short
- Count = 3
- Default =
BITS_PER_SAMPLE_RGB
TAG_BODY_SERIAL_NUMBER
public static final String TAG_BODY_SERIAL_NUMBER = "BodySerialNumber"
This tag records the serial number of the body of the camera that was used in photography as an ASCII string.
- Tag = 42033
- Type = String
- Default = None
TAG_BRIGHTNESS_VALUE
public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue"
The value of brightness. The unit is the APEX value. Ordinarily it is given in the range of -99.99 to 99.99. Note that if the numerator of the recorded value is 0xFFFFFFFF, Unknown shall be indicated.
- Tag = 37379
- Type = Signed rational
- Count = 1
- Default = None
public static final String TAG_CAMARA_OWNER_NAME = "CameraOwnerName"
This tag records the owner of a camera used in photography as an ASCII string.
- Tag = 42032
- Type = String
- Default = None
TAG_CAMERA_OWNER_NAME
public static final String TAG_CAMERA_OWNER_NAME = "CameraOwnerName"
This tag records the owner of a camera used in photography as an ASCII string.
- Tag = 42032
- Type = String
- Default = None
TAG_CFA_PATTERN
public static final String TAG_CFA_PATTERN = "CFAPattern"
Indicates the color filter array (CFA) geometric pattern of the image sensor when a one-chip color area sensor is used. It does not apply to all sensing methods.
- Tag = 41730
- Type = Undefined
- Default = None
| See also | |
|---|---|
TAG_SENSING_METHOD |
|
SENSOR_TYPE_ONE_CHIP |
TAG_COLOR_SPACE
public static final String TAG_COLOR_SPACE = "ColorSpace"
The color space information tag is always recorded as the color space specifier. Normally COLOR_SPACE_S_RGB is used to define the color space based on the PC monitor conditions and environment. If a color space other than COLOR_SPACE_S_RGB is used, COLOR_SPACE_UNCALIBRATED is set. Image data recorded as COLOR_SPACE_UNCALIBRATED may be treated as COLOR_SPACE_S_RGB when it is converted to Flashpix.
- Tag = 40961
- Type = Unsigned short
- Count = 1
TAG_COMPONENTS_CONFIGURATION
public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration"
Information specific to compressed data. The channels of each component are arranged in order from the 1st component to the 4th. For uncompressed data the data arrangement is given in the TAG_PHOTOMETRIC_INTERPRETATION. However, since TAG_PHOTOMETRIC_INTERPRETATION can only express the order of Y, Cb and Cr, this tag is provided for cases when compressed data uses components other than Y, Cb, and Cr and to enable support of other sequences.
- Tag = 37121
- Type = Undefined
- Length = 4
- Default = 4 5 6 0 (if RGB uncompressed) or 1 2 3 0 (other cases)
- 0 = does not exist
- 1 = Y
- 2 = Cb
- 3 = Cr
- 4 = R
- 5 = G
- 6 = B
- other = reserved
TAG_COMPRESSED_BITS_PER_PIXEL
public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"
Information specific to compressed data. The compression mode used for a compressed image is indicated in unit bits per pixel.
- Tag = 37122
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_COMPRESSION
public static final String TAG_COMPRESSION = "Compression"
The compression scheme used for the image data. When a primary image is JPEG compressed, this designation is not necessary. So, this tag shall not be recorded. When thumbnails use JPEG compression, this tag value is set to 6.
- Tag = 259
- Type = Unsigned short
- Count = 1
- Default = None
| See also | |
|---|---|
DATA_UNCOMPRESSED |
|
DATA_JPEG |
TAG_CONTRAST
public static final String TAG_CONTRAST = "Contrast"
This tag indicates the direction of contrast processing applied by the camera when the image was shot.
- Tag = 41992
- Type = Unsigned short
- Count = 1
- Default =
CONTRAST_NORMAL
| See also | |
|---|---|
CONTRAST_NORMAL |
|
CONTRAST_SOFT |
|
CONTRAST_HARD |
TAG_COPYRIGHT
public static final String TAG_COPYRIGHT = "Copyright"
Copyright information. In this standard the tag is used to indicate both the photographer and editor copyrights. It is the copyright notice of the person or organization claiming rights to the image. The Interoperability copyright statement including date and rights should be written in this field; e.g., "Copyright, John Smith, 19xx. All rights reserved." In this standard the field records both the photographer and editor copyrights, with each recorded in a separate part of the statement. When there is a clear distinction between the photographer and editor copyrights, these are to be written in the order of photographer followed by editor copyright, separated by NULL (in this case, since the statement also ends with a NULL, there are two NULL codes) (see example 1). When only the photographer copyright is given, it is terminated by one NULL code (see example 2). When only the editor copyright is given, the photographer copyright part consists of one space followed by a terminating NULL code, then the editor copyright is given (see example 3). When the field is left blank, it is treated as unknown.
Ex. 1) When both the photographer copyright and editor copyright are given.
- Photographer copyright + NULL + editor copyright + NULL
Ex. 2) When only the photographer copyright is given.
- Photographer copyright + NULL
Ex. 3) When only the editor copyright is given.
- Space (
0x20) + NULL + editor copyright + NULL
- Tag = 315
- Type = String
- Default = None
TAG_CUSTOM_RENDERED
public static final String TAG_CUSTOM_RENDERED = "CustomRendered"
This tag indicates the use of special processing on image data, such as rendering geared to output. When special processing is performed, the Exif/DCF reader is expected to disable or minimize any further processing.
- Tag = 41985
- Type = Unsigned short
- Count = 1
- Default =
RENDERED_PROCESS_NORMAL
TAG_DATETIME
public static final String TAG_DATETIME = "DateTime"
The date and time of image creation. In this standard it is the date and time the file was changed. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format, and the date and time separated by one blank character (0x20). When the date and time are unknown, all the character spaces except colons (":") should be filled with blank characters, or else the Interoperability field should be filled with blank characters. The character string length is 20 Bytes including NULL for termination. When the field is left blank, it is treated as unknown.
- Tag = 306
- Type = String
- Length = 19
- Default = None
Note: The format "YYYY-MM-DD HH:MM:SS" is also supported for reading. For writing, however, calling setAttribute with the "YYYY-MM-DD HH:MM:SS" format will automatically convert it to the primary format, "YYYY:MM:DD HH:MM:SS".
TAG_DATETIME_DIGITIZED
public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized"
The date and time when the image was stored as digital data. If, for example, an image was captured by DSC and at the same time the file was recorded, then TAG_DATETIME_ORIGINAL and this tag will have the same contents. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format, and the date and time separated by one blank character (0x20). When the date and time are unknown, all the character spaces except colons (":")should be filled with blank characters, or else the Interoperability field should be filled with blank characters. When the field is left blank, it is treated as unknown.
- Tag = 36868
- Type = String
- Length = 19
- Default = None
Note: The format "YYYY-MM-DD HH:MM:SS" is also supported for reading. For writing, however, calling setAttribute with the "YYYY-MM-DD HH:MM:SS" format will automatically convert it to the primary format, "YYYY:MM:DD HH:MM:SS".
TAG_DATETIME_ORIGINAL
public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal"
The date and time when the original image data was generated. For a DSC the date and time the picture was taken are recorded. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format, and the date and time separated by one blank character (0x20). When the date and time are unknown, all the character spaces except colons (":") should be filled with blank characters, or else the Interoperability field should be filled with blank characters. When the field is left blank, it is treated as unknown.
- Tag = 36867
- Type = String
- Length = 19
- Default = None
Note: The format "YYYY-MM-DD HH:MM:SS" is also supported for reading. For writing, however, calling setAttribute with the "YYYY-MM-DD HH:MM:SS" format will automatically convert it to the primary format, "YYYY:MM:DD HH:MM:SS".
TAG_DEFAULT_CROP_SIZE
public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize"
Type is int. DNG Specification 1.4.0.0. Section 4
TAG_DEVICE_SETTING_DESCRIPTION
public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription"
This tag indicates information on the picture-taking conditions of a particular camera model. The tag is used only to indicate the picture-taking conditions in the Exif/DCF reader.
- Tag = 41995
- Type = Undefined
- Default = None
TAG_DIGITAL_ZOOM_RATIO
public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio"
This tag indicates the digital zoom ratio when the image was shot. If the numerator of the recorded value is 0, this indicates that digital zoom was not used.
Note: For backwards compatibility this attribute is returned from getAttribute in decimal form (i.e. the format produced by toString). It is accepted into setAttribute in both rational (e.g. "1/3") and decimal forms. The decimal format is anything accepted by parseDouble, e.g. "0.125".
- Tag = 41988
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_DNG_VERSION
public static final String TAG_DNG_VERSION = "DNGVersion"
Type is int. DNG Specification 1.4.0.0. Section 4
TAG_EXIF_VERSION
public static final String TAG_EXIF_VERSION = "ExifVersion"
The version of this standard supported. Nonexistence of this field is taken to mean nonconformance to the standard. In according with conformance to this standard, this tag shall be recorded like "0230” as 4-byte ASCII.
- Tag = 36864
- Type = Undefined
- Length = 4
- Default = "0230"
TAG_EXPOSURE_BIAS_VALUE
public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue"
The exposure bias. The unit is the APEX value. Ordinarily it is given in the range of -99.99 to 99.99.
- Tag = 37380
- Type = Signed rational
- Count = 1
- Default = None
TAG_EXPOSURE_INDEX
public static final String TAG_EXPOSURE_INDEX = "ExposureIndex"
Indicates the exposure index selected on the camera or input device at the time the image is captured.
- Tag = 41493
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_EXPOSURE_MODE
public static final String TAG_EXPOSURE_MODE = "ExposureMode"
This tag indicates the exposure mode set when the image was shot. In EXPOSURE_MODE_AUTO_BRACKET, the camera shoots a series of frames of the same scene at different exposure settings.
- Tag = 41986
- Type = Unsigned short
- Count = 1
- Default = None
TAG_EXPOSURE_PROGRAM
public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram"
The class of the program used by the camera to set exposure when the picture is taken. The tag values are as follows.
- Tag = 34850
- Type = Unsigned short
- Count = 1
- Default =
EXPOSURE_PROGRAM_NOT_DEFINED
TAG_EXPOSURE_TIME
public static final String TAG_EXPOSURE_TIME = "ExposureTime"
Exposure time, given in seconds.
Note: For backwards compatibility this attribute is returned from getAttribute in decimal form (i.e. the format produced by toString). It is accepted into setAttribute in both rational (e.g. "1/3") and decimal forms. The decimal format is anything accepted by parseDouble, e.g. "0.125".
- Tag = 33434
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_FILE_SOURCE
public static final String TAG_FILE_SOURCE = "FileSource"
Indicates the image source. If a DSC recorded the image, this tag value always shall be set to FILE_SOURCE_DSC.
- Tag = 41728
- Type = Undefined
- Length = 1
- Default =
FILE_SOURCE_DSC
TAG_FLASH
public static final String TAG_FLASH = "Flash"
This tag indicates the status of flash when the image was shot. Bit 0 indicates the flash firing status, bits 1 and 2 indicate the flash return status, bits 3 and 4 indicate the flash mode, bit 5 indicates whether the flash function is present, and bit 6 indicates "red eye" mode.
- Tag = 37385
- Type = Unsigned short
- Count = 1
TAG_FLASHPIX_VERSION
public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion"
The Flashpix format version supported by a FPXR file. If the FPXR function supports Flashpix format Ver. 1.0, this is indicated similarly to TAG_EXIF_VERSION by recording "0100" as 4-byte ASCII.
- Tag = 40960
- Type = Undefined
- Length = 4
- Default = "0100"
TAG_FLASH_ENERGY
public static final String TAG_FLASH_ENERGY = "FlashEnergy"
Indicates the strobe energy at the time the image is captured, as measured in Beam Candle Power Seconds (BCPS).
- Tag = 41483
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_FOCAL_LENGTH
public static final String TAG_FOCAL_LENGTH = "FocalLength"
The actual focal length of the lens, in mm. Conversion is not made to the focal length of a 35mm film camera.
- Tag = 37386
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_FOCAL_LENGTH_IN_35MM_FILM
public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm"
This tag indicates the equivalent focal length assuming a 35mm film camera, in mm. A value of 0 means the focal length is unknown. Note that this tag differs from TAG_FOCAL_LENGTH.
- Tag = 41989
- Type = Unsigned short
- Count = 1
- Default = None
TAG_FOCAL_PLANE_RESOLUTION_UNIT
public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit"
Indicates the unit for measuring TAG_FOCAL_PLANE_X_RESOLUTION and TAG_FOCAL_PLANE_Y_RESOLUTION. This value is the same as TAG_RESOLUTION_UNIT.
- Tag = 41488
- Type = Unsigned short
- Count = 1
- Default =
RESOLUTION_UNIT_INCHES
TAG_FOCAL_PLANE_X_RESOLUTION
public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution"
Indicates the number of pixels in the image width (X) direction per TAG_FOCAL_PLANE_RESOLUTION_UNIT on the camera focal plane.
- Tag = 41486
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_FOCAL_PLANE_Y_RESOLUTION
public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution"
Indicates the number of pixels in the image height (Y) direction per TAG_FOCAL_PLANE_RESOLUTION_UNIT on the camera focal plane.
- Tag = 41487
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_F_NUMBER
public static final String TAG_F_NUMBER = "FNumber"
The F number.
Note: For backwards compatibility this attribute is returned from getAttribute in decimal form (i.e. the format produced by toString). It is accepted into setAttribute in both rational (e.g. "1/3") and decimal forms. The decimal format is anything accepted by parseDouble, e.g. "0.125".
- Tag = 33437
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GAIN_CONTROL
public static final String TAG_GAIN_CONTROL = "GainControl"
This tag indicates the degree of overall image gain adjustment.
- Tag = 41991
- Type = Unsigned short
- Count = 1
- Default = None
TAG_GAMMA
public static final String TAG_GAMMA = "Gamma"
Indicates the value of coefficient gamma. The formula of transfer function used for image reproduction is expressed as follows.
(Reproduced value) = (Input value) ^ gamma
Both reproduced value and input value indicate normalized value, whose minimum value is 0 and maximum value is 1.
- Tag = 42240
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_ALTITUDE
public static final String TAG_GPS_ALTITUDE = "GPSAltitude"
Indicates the altitude based on the reference in TAG_GPS_ALTITUDE_REF. The reference unit is meters.
- Tag = 6
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_ALTITUDE_REF
public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"
Indicates the altitude used as the reference altitude. If the reference is sea level and the altitude is above sea level, 0 is given. If the altitude is below sea level, a value of 1 is given and the altitude is indicated as an absolute value in TAG_GPS_ALTITUDE.
- Tag = 5
- Type = Byte
- Count = 1
- Default = 0
TAG_GPS_AREA_INFORMATION
public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation"
A character string recording the name of the GPS area. The first byte indicates the character code used, and this is followed by the name of the GPS area.
- Tag = 28
- Type = Undefined
- Default = None
TAG_GPS_DATESTAMP
public static final String TAG_GPS_DATESTAMP = "GPSDateStamp"
A character string recording date and time information relative to UTC (Coordinated Universal Time). The format is "YYYY:MM:DD".
- Tag = 29
- Type = String
- Length = 10
- Default = None
TAG_GPS_DEST_BEARING
public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing"
Indicates the bearing to the destination point. The range of values is from 0.00 to 359.99.
- Tag = 24
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_DEST_BEARING_REF
public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef"
Indicates the reference used for giving the bearing to the destination point.
- Tag = 23
- Type = String
- Length = 1
- Default =
GPS_DIRECTION_TRUE
| See also | |
|---|---|
GPS_DIRECTION_TRUE |
|
GPS_DIRECTION_MAGNETIC |
TAG_GPS_DEST_DISTANCE
public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance"
Indicates the distance to the destination point.
- Tag = 26
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_DEST_DISTANCE_REF
public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef"
Indicates the unit used to express the distance to the destination point.
- Tag = 25
- Type = String
- Length = 1
- Default =
GPS_DISTANCE_KILOMETERS
TAG_GPS_DEST_LATITUDE
public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude"
Indicates the latitude of the destination point. The latitude is expressed as three unsigned rational values giving the degrees, minutes, and seconds, respectively. If latitude is expressed as degrees, minutes and seconds, a typical format would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be dd/1, mmmm/100, 0/1.
- Tag = 20
- Type = Unsigned rational
- Count = 3
- Default = None
TAG_GPS_DEST_LATITUDE_REF
public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef"
Indicates whether the latitude of the destination point is north or south latitude.
- Tag = 19
- Type = String
- Length = 1
- Default = None
| See also | |
|---|---|
LATITUDE_NORTH |
|
LATITUDE_SOUTH |
TAG_GPS_DEST_LONGITUDE
public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude"
Indicates the longitude of the destination point. The longitude is expressed as three unsigned rational values giving the degrees, minutes, and seconds, respectively. If longitude is expressed as degrees, minutes and seconds, a typical format would be ddd/1, mm/1, ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be ddd/1, mmmm/100, 0/1.
- Tag = 22
- Type = Unsigned rational
- Count = 3
- Default = None
TAG_GPS_DEST_LONGITUDE_REF
public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef"
Indicates whether the longitude of the destination point is east or west longitude.
- Tag = 21
- Type = String
- Length = 1
- Default = None
| See also | |
|---|---|
LONGITUDE_EAST |
|
LONGITUDE_WEST |
TAG_GPS_DIFFERENTIAL
public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential"
Indicates whether differential correction is applied to the GPS receiver.
- Tag = 30
- Type = Unsigned short
- Count = 1
- Default = None
TAG_GPS_DOP
public static final String TAG_GPS_DOP = "GPSDOP"
Indicates the GPS DOP (data degree of precision). An HDOP value is written during two-dimensional measurement, and PDOP during three-dimensional measurement.
- Tag = 11
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_H_POSITIONING_ERROR
public static final String TAG_GPS_H_POSITIONING_ERROR = "GPSHPositioningError"
This tag indicates horizontal positioning errors in meters.
- Tag = 31
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_IMG_DIRECTION
public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection"
ndicates the direction of the image when it was captured. The range of values is from 0.00 to 359.99.
- Tag = 17
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_IMG_DIRECTION_REF
public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef"
Indicates the reference for giving the direction of the image when it is captured.
- Tag = 16
- Type = String
- Length = 1
- Default =
GPS_DIRECTION_TRUE
| See also | |
|---|---|
GPS_DIRECTION_TRUE |
|
GPS_DIRECTION_MAGNETIC |
TAG_GPS_LATITUDE
public static final String TAG_GPS_LATITUDE = "GPSLatitude"
Indicates the latitude. The latitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. If latitude is expressed as degrees, minutes and seconds, a typical format would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be dd/1,mmmm/100,0/1.
- Tag = 2
- Type = Unsigned rational
- Count = 3
- Default = None
TAG_GPS_LATITUDE_REF
public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"
Indicates whether the latitude is north or south latitude.
- Tag = 1
- Type = String
- Length = 1
- Default = None
| See also | |
|---|---|
LATITUDE_NORTH |
|
LATITUDE_SOUTH |
TAG_GPS_LONGITUDE
public static final String TAG_GPS_LONGITUDE = "GPSLongitude"
Indicates the longitude. The longitude is expressed as three RATIONAL values giving the degrees, minutes, and seconds, respectively. If longitude is expressed as degrees, minutes and seconds, a typical format would be ddd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format would be ddd/1,mmmm/100,0/1.
- Tag = 4
- Type = Unsigned rational
- Count = 3
- Default = None
TAG_GPS_LONGITUDE_REF
public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"
Indicates whether the longitude is east or west longitude.
- Tag = 3
- Type = String
- Length = 1
- Default = None
| See also | |
|---|---|
LONGITUDE_EAST |
|
LONGITUDE_WEST |
TAG_GPS_MAP_DATUM
public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum"
Indicates the geodetic survey data used by the GPS receiver. If the survey data is restricted to Japan,the value of this tag is 'TOKYO' or 'WGS-84'. If a GPS Info tag is recorded, it is strongly recommended that this tag be recorded.
- Tag = 18
- Type = String
- Default = None
TAG_GPS_MEASURE_MODE
public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode"
Indicates the GPS measurement mode. Originally it was defined for GPS, but it may be used for recording a measure mode to record the position information provided from a mobile base station or wireless LAN as well as GPS.
- Tag = 10
- Type = String
- Length = 1
- Default = None
| See also | |
|---|---|
GPS_MEASUREMENT_2D |
|
GPS_MEASUREMENT_3D |
TAG_GPS_PROCESSING_METHOD
public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod"
A character string recording the name of the method used for location finding. The first byte indicates the character code used, and this is followed by the name of the method.
- Tag = 27
- Type = Undefined
- Default = None
TAG_GPS_SATELLITES
public static final String TAG_GPS_SATELLITES = "GPSSatellites"
Indicates the GPS satellites used for measurements. This tag may be used to describe the number of satellites, their ID number, angle of elevation, azimuth, SNR and other information in ASCII notation. The format is not specified. If the GPS receiver is incapable of taking measurements, value of the tag shall be set to null.
- Tag = 8
- Type = String
- Default = None
TAG_GPS_SPEED
public static final String TAG_GPS_SPEED = "GPSSpeed"
Indicates the speed of GPS receiver movement. The units are indicated by TAG_GPS_SPEED_REF.
- Tag = 13
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_SPEED_REF
public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef"
Indicates the unit used to express the GPS receiver speed of movement.
- Tag = 12
- Type = String
- Length = 1
- Default =
GPS_SPEED_KILOMETERS_PER_HOUR
TAG_GPS_STATUS
public static final String TAG_GPS_STATUS = "GPSStatus"
Indicates the status of the GPS receiver when the image is recorded. 'A' means measurement is in progress, and 'V' means the measurement is interrupted.
- Tag = 9
- Type = String
- Length = 1
- Default = None
TAG_GPS_TIMESTAMP
public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp"
Indicates the time as UTC (Coordinated Universal Time). TimeStamp is expressed as three unsigned rational values giving the hour, minute, and second.
Note: This attribute is returned from getAttribute and accepted into setAttribute as 3 colon-separated integers, e.g. "11:05:32". Decimal or rational hours, minutes or seconds parts are not supported.
- Tag = 7
- Type = Unsigned rational
- Count = 3
- Default = None
TAG_GPS_TRACK
public static final String TAG_GPS_TRACK = "GPSTrack"
Indicates the direction of GPS receiver movement. The range of values is from 0.00 to 359.99.
- Tag = 15
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_GPS_TRACK_REF
public static final String TAG_GPS_TRACK_REF = "GPSTrackRef"
Indicates the reference for giving the direction of GPS receiver movement.
- Tag = 14
- Type = String
- Length = 1
- Default =
GPS_DIRECTION_TRUE
| See also | |
|---|---|
GPS_DIRECTION_TRUE |
|
GPS_DIRECTION_MAGNETIC |
TAG_GPS_VERSION_ID
public static final String TAG_GPS_VERSION_ID = "GPSVersionID"
Indicates the version of GPS Info IFD. The version is given as 2.3.0.0. This tag is mandatory when GPS-related tags are present. Note that this tag is written as a different byte than TAG_EXIF_VERSION.
- Tag = 0
- Type = Byte
- Count = 4
- Default = 2.3.0.0
- 2300 = Version 2.3
- Other = reserved
TAG_IMAGE_DESCRIPTION
public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription"
An ASCII string giving the title of the image. It is possible to be added a comment such as "1988 company picnic" or the like. Two-byte character codes cannot be used. When a 2-byte code is necessary, TAG_USER_COMMENT is to be used.
- Tag = 270
- Type = String
- Default = None
TAG_IMAGE_LENGTH
public static final String TAG_IMAGE_LENGTH = "ImageLength"
The number of rows of image data. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it.
- Tag = 257
- Type = Unsigned short or Unsigned long
- Count = 1
- Default = None
TAG_IMAGE_UNIQUE_ID
public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID"
This tag indicates an identifier assigned uniquely to each image. It is recorded as an ASCII string equivalent to hexadecimal notation and 128-bit fixed length.
- Tag = 42016
- Type = String
- Length = 32
- Default = None
TAG_IMAGE_WIDTH
public static final String TAG_IMAGE_WIDTH = "ImageWidth"
The number of columns of image data, equal to the number of pixels per row. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it.
- Tag = 256
- Type = Unsigned short or Unsigned long
- Count = 1
- Default = None
TAG_INTEROPERABILITY_INDEX
public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex"
Indicates the identification of the Interoperability rule.
- Tag = 1
- Type = String
- Length = 4
- Default = None
- "R98" = Indicates a file conforming to R98 file specification of Recommended Exif Interoperability Rules (Exif R 98) or to DCF basic file stipulated by Design Rule for Camera File System.
- "THM" = Indicates a file conforming to DCF thumbnail file stipulated by Design rule for Camera File System.
- “R03” = Indicates a file conforming to DCF Option File stipulated by Design rule for Camera File System.
TAG_ISO_SPEED
public static final String TAG_ISO_SPEED = "ISOSpeed"
This tag indicates the ISO speed value of a camera or input device that is defined in ISO 12232. When recording this tag, TAG_PHOTOGRAPHIC_SENSITIVITY and TAG_SENSITIVITY_TYPE shall also be recorded.
- Tag = 34867
- Type = Unsigned long
- Count = 1
- Default = None
TAG_ISO_SPEED_LATITUDE_YYY
public static final String TAG_ISO_SPEED_LATITUDE_YYY = "ISOSpeedLatitudeyyy"
This tag indicates the ISO speed latitude yyy value of a camera or input device that is defined in ISO 12232. However, this tag shall not be recorded without TAG_ISO_SPEED and TAG_ISO_SPEED_LATITUDE_ZZZ.
- Tag = 34868
- Type = Unsigned long
- Count = 1
- Default = None
TAG_ISO_SPEED_LATITUDE_ZZZ
public static final String TAG_ISO_SPEED_LATITUDE_ZZZ = "ISOSpeedLatitudezzz"
This tag indicates the ISO speed latitude zzz value of a camera or input device that is defined in ISO 12232. However, this tag shall not be recorded without TAG_ISO_SPEED and TAG_ISO_SPEED_LATITUDE_YYY.
- Tag = 34869
- Type = Unsigned long
- Count = 1
- Default = None
public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings"
| See also | |
|---|---|
TAG_PHOTOGRAPHIC_SENSITIVITY |
TAG_JPEG_INTERCHANGE_FORMAT
public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat"
The offset to the start byte (SOI) of JPEG compressed thumbnail data. This shall not be used for primary image JPEG data.
- Tag = 513
- Type = Unsigned long
- Default = None
TAG_JPEG_INTERCHANGE_FORMAT_LENGTH
public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength"
The number of bytes of JPEG compressed thumbnail data. This is not used for primary image JPEG data. JPEG thumbnails are not divided but are recorded as a continuous JPEG bitstream from SOI to EOI. APPn and COM markers should not be recorded. Compressed thumbnails shall be recorded in no more than 64 KBytes, including all other data to be recorded in APP1.
- Tag = 514
- Type = Unsigned long
- Default = None
TAG_LENS_MAKE
public static final String TAG_LENS_MAKE = "LensMake"
This tag records the lens manufacturer as an ASCII string.
- Tag = 42035
- Type = String
- Default = None
TAG_LENS_MODEL
public static final String TAG_LENS_MODEL = "LensModel"
This tag records the lens’s model name and model number as an ASCII string.
- Tag = 42036
- Type = String
- Default = None
TAG_LENS_SERIAL_NUMBER
public static final String TAG_LENS_SERIAL_NUMBER = "LensSerialNumber"
This tag records the serial number of the interchangeable lens that was used in photography as an ASCII string.
- Tag = 42037
- Type = String
- Default = None
TAG_LENS_SPECIFICATION
public static final String TAG_LENS_SPECIFICATION = "LensSpecification"
This tag notes minimum focal length, maximum focal length, minimum F number in the minimum focal length, and minimum F number in the maximum focal length, which are specification information for the lens that was used in photography. When the minimum F number is unknown, the notation is 0/0.
- Tag = 42034
- Type = Unsigned rational
- Count = 4
- Default = None
- Value 1 := Minimum focal length (unit: mm)
- Value 2 : = Maximum focal length (unit: mm)
- Value 3 : = Minimum F number in the minimum focal length
- Value 4 : = Minimum F number in the maximum focal length
TAG_LIGHT_SOURCE
public static final String TAG_LIGHT_SOURCE = "LightSource"
The kind of light source.
- Tag = 37384
- Type = Unsigned short
- Count = 1
- Default =
LIGHT_SOURCE_UNKNOWN
TAG_MAKE
public static final String TAG_MAKE = "Make"
The manufacturer of the recording equipment. This is the manufacturer of the DSC, scanner, video digitizer or other equipment that generated the image. When the field is left blank, it is treated as unknown.
- Tag = 271
- Type = String
- Default = None
TAG_MAKER_NOTE
public static final String TAG_MAKER_NOTE = "MakerNote"
A tag for manufacturers of Exif/DCF writers to record any desired information. The contents are up to the manufacturer, but this tag shall not be used for any other than its intended purpose.
- Tag = 37500
- Type = Undefined
- Default = None
TAG_MAX_APERTURE_VALUE
public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue"
The smallest F number of the lens. The unit is the APEX value. Ordinarily it is given in the range of 00.00 to 99.99, but it is not limited to this range.
- Tag = 37381
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_METERING_MODE
public static final String TAG_METERING_MODE = "MeteringMode"
The metering mode.
- Tag = 37383
- Type = Unsigned short
- Count = 1
- Default =
METERING_MODE_UNKNOWN
TAG_MODEL
public static final String TAG_MODEL = "Model"
The model name or model number of the equipment. This is the model name of number of the DSC, scanner, video digitizer or other equipment that generated the image. When the field is left blank, it is treated as unknown.
- Tag = 272
- Type = String
- Default = None
TAG_NEW_SUBFILE_TYPE
public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType"
Type is int. See JEITA CP-3451C Spec Section 3: Bilevel Images.
TAG_OECF
public static final String TAG_OECF = "OECF"
Indicates the Opto-Electric Conversion Function (OECF) specified in ISO 14524. OECF is the relationship between the camera optical input and the image values.
- Tag = 34856
- Type = Undefined
- Default = None
TAG_OFFSET_TIME
public static final String TAG_OFFSET_TIME = "OffsetTime"
A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTime tag. The format when recording the offset is "±HH:MM". The part of "±" shall be recorded as "+" or "-". When the offsets are unknown, all the character spaces except colons (":") should be filled with blank characters, or else the Interoperability field should be filled with blank characters. The character string length is 7 Bytes including NULL for termination. When the field is left blank, it is treated as unknown.
- Tag = 36880
- Type = String
- Length = 7
- Default = None
TAG_OFFSET_TIME_DIGITIZED
public static final String TAG_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"
A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTimeDigitized tag. The format when recording the offset is "±HH:MM". The part of "±" shall be recorded as "+" or "-". When the offsets are unknown, all the character spaces except colons (":") should be filled with blank characters, or else the Interoperability field should be filled with blank characters. The character string length is 7 Bytes including NULL for termination. When the field is left blank, it is treated as unknown.
- Tag = 36882
- Type = String
- Length = 7
- Default = None
TAG_OFFSET_TIME_ORIGINAL
public static final String TAG_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"
A tag used to record the offset from UTC (the time difference from Universal Time Coordinated including daylight saving time) of the time of DateTimeOriginal tag. The format when recording the offset is "±HH:MM". The part of "±" shall be recorded as "+" or "-". When the offsets are unknown, all the character spaces except colons (":") should be filled with blank characters, or else the Interoperability field should be filled with blank characters. The character string length is 7 Bytes including NULL for termination. When the field is left blank, it is treated as unknown.
- Tag = 36881
- Type = String
- Length = 7
- Default = None
TAG_ORF_ASPECT_FRAME
public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame"
Type is int. See Olympus Image Processing tags in http://www.exiv2.org/tags-olympus.html.
TAG_ORF_PREVIEW_IMAGE_LENGTH
public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength"
Type is int. See Olympus Camera Settings tags in http://www.exiv2.org/tags-olympus.html.
TAG_ORF_PREVIEW_IMAGE_START
public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart"
Type is int. See Olympus Camera Settings tags in http://www.exiv2.org/tags-olympus.html.
TAG_ORF_THUMBNAIL_IMAGE
public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage"
Type is undefined. See Olympus MakerNote tags in http://www.exiv2.org/tags-olympus.html.
TAG_ORIENTATION
public static final String TAG_ORIENTATION = "Orientation"
The image orientation viewed in terms of rows and columns.
- Tag = 274
- Type = Unsigned short
- Count = 1
- Default =
ORIENTATION_NORMAL
TAG_PHOTOGRAPHIC_SENSITIVITY
public static final String TAG_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity"
This tag indicates the sensitivity of the camera or input device when the image was shot. More specifically, it indicates one of the following values that are parameters defined in ISO 12232: standard output sensitivity (SOS), recommended exposure index (REI), or ISO speed. Accordingly, if a tag corresponding to a parameter that is designated by TAG_SENSITIVITY_TYPE is recorded, the values of the tag and of this tag are the same. However, if the value is 65535 or higher, the value of this tag shall be 65535. When recording this tag, TAG_SENSITIVITY_TYPE should also be recorded. In addition, while “Count = Any”, only 1 count should be used when recording this tag.
- Tag = 34855
- Type = Unsigned short
- Count = Any
- Default = None
TAG_PHOTOMETRIC_INTERPRETATION
public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation"
The pixel composition. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it.
- Tag = 262
- Type = SHORT
- Count = 1
- Default = None
TAG_PIXEL_X_DIMENSION
public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension"
Information specific to compressed data. When a compressed file is recorded, the valid width of the meaningful image shall be recorded in this tag, whether or not there is padding data or a restart marker. This tag shall not exist in an uncompressed file.
- Tag = 40962
- Type = Unsigned short or Unsigned long
- Count = 1
- Default = None
TAG_PIXEL_Y_DIMENSION
public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension"
Information specific to compressed data. When a compressed file is recorded, the valid height of the meaningful image shall be recorded in this tag, whether or not there is padding data or a restart marker. This tag shall not exist in an uncompressed file. Since data padding is unnecessary in the vertical direction, the number of lines recorded in this valid image height tag will in fact be the same as that recorded in the SOF.
- Tag = 40963
- Type = Unsigned short or Unsigned long
- Count = 1
TAG_PLANAR_CONFIGURATION
public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration"
Indicates whether pixel components are recorded in chunky or planar format. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it. If this field does not exist, the TIFF default, FORMAT_CHUNKY, is assumed.
- Tag = 284
- Type = Unsigned short
- Count = 1
| See also | |
|---|---|
FORMAT_CHUNKY |
|
FORMAT_PLANAR |
TAG_PRIMARY_CHROMATICITIES
public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities"
The chromaticity of the three primary colors of the image. Normally this tag need not be used, since color space is specified in TAG_COLOR_SPACE.
- Tag = 319
- Type = Unsigned rational
- Count = 6
- Default = None
TAG_RECOMMENDED_EXPOSURE_INDEX
public static final String TAG_RECOMMENDED_EXPOSURE_INDEX = "RecommendedExposureIndex"
This tag indicates the recommended exposure index value of a camera or input device defined in ISO 12232. When recording this tag, TAG_PHOTOGRAPHIC_SENSITIVITY and TAG_SENSITIVITY_TYPE shall also be recorded.
- Tag = 34866
- Type = Unsigned long
- Count = 1
- Default = None
TAG_REFERENCE_BLACK_WHITE
public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite"
The reference black point value and reference white point value. No defaults are given in TIFF, but the values below are given as defaults here. The color space is declared in a color space information tag, with the default being the value that gives the optimal image characteristics Interoperability these conditions
- Tag = 532
- Type = RATIONAL
- Count = 6
- Default = [0, 255, 0, 255, 0, 255] (when
TAG_PHOTOMETRIC_INTERPRETATIONisPHOTOMETRIC_INTERPRETATION_RGB) or [0, 255, 0, 128, 0, 128] (whenTAG_PHOTOMETRIC_INTERPRETATIONisPHOTOMETRIC_INTERPRETATION_YCBCR)
TAG_RELATED_SOUND_FILE
public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile"
This tag is used to record the name of an audio file related to the image data. The only relational information recorded here is the Exif audio file name and extension (an ASCII string consisting of 8 characters + '.' + 3 characters). The path is not recorded.
When using this tag, audio files shall be recorded in conformance to the Exif audio format. Writers can also store the data such as Audio within APP2 as Flashpix extension stream data. Audio files shall be recorded in conformance to the Exif audio format.
- Tag = 40964
- Type = String
- Length = 12
- Default = None
TAG_RESOLUTION_UNIT
public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit"
The unit for measuring TAG_X_RESOLUTION and TAG_Y_RESOLUTION. The same unit is used for both TAG_X_RESOLUTION and TAG_Y_RESOLUTION. If the image resolution is unknown, RESOLUTION_UNIT_INCHES shall be designated.
- Tag = 296
- Type = Unsigned short
- Count = 1
- Default =
RESOLUTION_UNIT_INCHES
TAG_ROWS_PER_STRIP
public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip"
The number of rows per strip. This is the number of rows in the image of one strip when an image is divided into strips. In the case of JPEG compressed data, this designation is not necessary. So, this tag shall not be recorded.
- Tag = 278
- Type = Unsigned short or Unsigned long
- Count = 1
- Default = None
| See also | |
|---|---|
TAG_STRIP_OFFSETS |
|
TAG_STRIP_BYTE_COUNTS |
TAG_RW2_ISO
public static final String TAG_RW2_ISO = "ISO"
Type is int. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_RW2_JPG_FROM_RAW
public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw"
Type is undefined. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_RW2_SENSOR_BOTTOM_BORDER
public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder"
Type is int. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_RW2_SENSOR_LEFT_BORDER
public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder"
Type is int. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_RW2_SENSOR_RIGHT_BORDER
public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder"
Type is int. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_RW2_SENSOR_TOP_BORDER
public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder"
Type is int. See PanasonicRaw tags in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PanasonicRaw.html
TAG_SAMPLES_PER_PIXEL
public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel"
The number of components per pixel. Since this standard applies to RGB and YCbCr images, the value set for this tag is 3. In JPEG compressed data, this tag shall not be used because a JPEG marker is used instead of it.
- Tag = 277
- Type = Unsigned short
- Count = 1
- Default = 3
TAG_SATURATION
public static final String TAG_SATURATION = "Saturation"
This tag indicates the direction of saturation processing applied by the camera when the image was shot.
- Tag = 41993
- Type = Unsigned short
- Count = 1
- Default =
SATURATION_NORMAL
TAG_SCENE_CAPTURE_TYPE
public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType"
This tag indicates the type of scene that was shot. It may also be used to record the mode in which the image was shot. Note that this differs from TAG_SCENE_TYPE.
- Tag = 41990
- Type = Unsigned short
- Count = 1
- Default = 0
TAG_SCENE_TYPE
public static final String TAG_SCENE_TYPE = "SceneType"
Indicates the type of scene. If a DSC recorded the image, this tag value shall always be set to SCENE_TYPE_DIRECTLY_PHOTOGRAPHED.
- Tag = 41729
- Type = Undefined
- Length = 1
- Default = 1
| See also | |
|---|---|
SCENE_TYPE_DIRECTLY_PHOTOGRAPHED |
TAG_SENSING_METHOD
public static final String TAG_SENSING_METHOD = "SensingMethod"
Indicates the image sensor type on the camera or input device.
- Tag = 41495
- Type = Unsigned short
- Count = 1
- Default = None
TAG_SENSITIVITY_TYPE
public static final String TAG_SENSITIVITY_TYPE = "SensitivityType"
This tag indicates which one of the parameters of ISO12232 is TAG_PHOTOGRAPHIC_SENSITIVITY. Although it is an optional tag, it should be recorded when TAG_PHOTOGRAPHIC_SENSITIVITY is recorded.
- Tag = 34864
- Type = Unsigned short
- Count = 1
- Default = None
TAG_SHARPNESS
public static final String TAG_SHARPNESS = "Sharpness"
This tag indicates the direction of sharpness processing applied by the camera when the image was shot.
- Tag = 41994
- Type = Unsigned short
- Count = 1
- Default =
SHARPNESS_NORMAL
| See also | |
|---|---|
SHARPNESS_NORMAL |
|
SHARPNESS_SOFT |
|
SHARPNESS_HARD |
TAG_SHUTTER_SPEED_VALUE
public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue"
Shutter speed. The unit is the APEX setting.
- Tag = 37377
- Type = Signed rational
- Count = 1
- Default = None
TAG_SOFTWARE
public static final String TAG_SOFTWARE = "Software"
This tag records the name and version of the software or firmware of the camera or image input device used to generate the image. The detailed format is not specified, but it is recommended that the example shown below be followed. When the field is left blank, it is treated as unknown.
Ex.) "Exif Software Version 1.00a".
- Tag = 305
- Type = String
- Default = None
TAG_SPATIAL_FREQUENCY_RESPONSE
public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse"
This tag records the camera or input device spatial frequency table and SFR values in the direction of image width, image height, and diagonal direction, as specified in ISO 12233.
- Tag = 41484
- Type = Undefined
- Default = None
TAG_SPECTRAL_SENSITIVITY
public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity"
Indicates the spectral sensitivity of each channel of the camera used. The tag value is an ASCII string compatible with the standard developed by the ASTM Technical committee.
- Tag = 34852
- Type = String
- Default = None
TAG_STANDARD_OUTPUT_SENSITIVITY
public static final String TAG_STANDARD_OUTPUT_SENSITIVITY = "StandardOutputSensitivity"
This tag indicates the standard output sensitivity value of a camera or input device defined in ISO 12232. When recording this tag, TAG_PHOTOGRAPHIC_SENSITIVITY and TAG_SENSITIVITY_TYPE shall also be recorded.
- Tag = 34865
- Type = Unsigned long
- Count = 1
- Default = None
TAG_STRIP_BYTE_COUNTS
public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts"
The total number of bytes in each strip. In the case of JPEG compressed data, this designation is not necessary. So, this tag shall not be recorded.
- Tag = 279
- Type = Unsigned short or Unsigned long
- Count = StripsPerImage (when using
FORMAT_CHUNKY) orTAG_SAMPLES_PER_PIXEL* StripsPerImage (when usingFORMAT_PLANAR) - Default = None
StripsPerImage = floor((TAG_IMAGE_LENGTH + TAG_ROWS_PER_STRIP - 1) / TAG_ROWS_PER_STRIP)
TAG_STRIP_OFFSETS
public static final String TAG_STRIP_OFFSETS = "StripOffsets"
For each strip, the byte offset of that strip. It is recommended that this be selected so the number of strip bytes does not exceed 64 KBytes.In the case of JPEG compressed data, this designation is not necessary. So, this tag shall not be recorded.
- Tag = 273
- Type = Unsigned short or Unsigned long
- Count = StripsPerImage (for
FORMAT_CHUNKY) orTAG_SAMPLES_PER_PIXEL* StripsPerImage (forFORMAT_PLANAR) - Default = None
StripsPerImage = floor((TAG_IMAGE_LENGTH + TAG_ROWS_PER_STRIP - 1) / TAG_ROWS_PER_STRIP)
| See also | |
|---|---|
TAG_ROWS_PER_STRIP |
|
TAG_STRIP_BYTE_COUNTS |
TAG_SUBFILE_TYPE
public static final String TAG_SUBFILE_TYPE = "SubfileType"
Type is int. See JEITA CP-3451C Spec Section 3: Bilevel Images.
TAG_SUBJECT_AREA
public static final String TAG_SUBJECT_AREA = "SubjectArea"
This tag indicates the location and area of the main subject in the overall scene.
- Tag = 37396
- Type = Unsigned short
- Count = 2 or 3 or 4
- Default = None
The subject location and area are defined by Count values as follows.
- Count = 2 Indicates the location of the main subject as coordinates. The first value is the X coordinate and the second is the Y coordinate.
- Count = 3 The area of the main subject is given as a circle. The circular area is expressed as center coordinates and diameter. The first value is the center X coordinate, the second is the center Y coordinate, and the third is the diameter.
- Count = 4 The area of the main subject is given as a rectangle. The rectangular area is expressed as center coordinates and area dimensions. The first value is the center X coordinate, the second is the center Y coordinate, the third is the width of the area, and the fourth is the height of the area.
Note that the coordinate values, width, and height are expressed in relation to the upper left as origin, prior to rotation processing as per TAG_ORIENTATION.
TAG_SUBJECT_DISTANCE
public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance"
The distance to the subject, given in meters.
Note that if the numerator of the recorded value is 0xFFFFFFFF, Infinity shall be indicated; and if the numerator is 0, Distance unknown shall be indicated.
Note: For backwards compatibility this attribute is returned from getAttribute in decimal form (i.e. the format produced by toString). It is accepted into setAttribute in both rational (e.g. "1/3") and decimal forms. The decimal format is anything accepted by parseDouble, e.g. "0.125".
- Tag = 37382
- Type = Unsigned rational
- Count = 1
- Default = None
TAG_SUBJECT_DISTANCE_RANGE
public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange"
This tag indicates the distance to the subject.
- Tag = 41996
- Type = Unsigned short
- Count = 1
- Default = None
TAG_SUBJECT_LOCATION
public static final String TAG_SUBJECT_LOCATION = "SubjectLocation"
Indicates the location of the main subject in the scene. The value of this tag represents the pixel at the center of the main subject relative to the left edge, prior to rotation processing as per TAG_ORIENTATION. The first value indicates the X column number and second indicates the Y row number. When a camera records the main subject location, it is recommended that TAG_SUBJECT_AREA be used instead of this tag.
- Tag = 41492
- Type = Unsigned short
- Count = 2
- Default = None
TAG_SUBSEC_TIME
public static final String TAG_SUBSEC_TIME = "SubSecTime"
A tag used to record fractions of seconds for TAG_DATETIME.
- Tag = 37520
- Type = String
- Default = None
TAG_SUBSEC_TIME_DIGITIZED
public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized"
A tag used to record fractions of seconds for TAG_DATETIME_DIGITIZED.
- Tag = 37522
- Type = String
- Default = None
TAG_SUBSEC_TIME_ORIGINAL
public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal"
A tag used to record fractions of seconds for TAG_DATETIME_ORIGINAL.
- Tag = 37521
- Type = String
- Default = None
TAG_THUMBNAIL_IMAGE_LENGTH
public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength"
| See also | |
|---|---|
TAG_IMAGE_LENGTH |
TAG_THUMBNAIL_IMAGE_WIDTH
public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth"
| See also | |
|---|---|
TAG_IMAGE_WIDTH |
TAG_TRANSFER_FUNCTION
public static final String TAG_TRANSFER_FUNCTION = "TransferFunction"
A transfer function for the image, described in tabular style. Normally this tag need not be used, since color space is specified in TAG_COLOR_SPACE.
- Tag = 301
- Type = Unsigned short
- Count = 3 * 256
- Default = None
TAG_USER_COMMENT
public static final String TAG_USER_COMMENT = "UserComment"
A tag for Exif users to write keywords or comments on the image besides those in TAG_IMAGE_DESCRIPTION, and without the character code limitations of it.
- Tag = 37510
- Type = Undefined
- Default = None
TAG_WHITE_BALANCE
public static final String TAG_WHITE_BALANCE = "WhiteBalance"
This tag indicates the white balance mode set when the image was shot.
- Tag = 41987
- Type = Unsigned short
- Count = 1
- Default = None
| See also | |
|---|---|
WHITEBALANCE_AUTO |
|
WHITEBALANCE_MANUAL |
TAG_WHITE_POINT
public static final String TAG_WHITE_POINT = "WhitePoint"
The chromaticity of the white point of the image. Normally this tag need not be used, since color space is specified in TAG_COLOR_SPACE.
- Tag = 318
- Type = Unsigned rational
- Count = 2
- Default = None
TAG_XMP
public static final String TAG_XMP = "Xmp"
Type is byte[]. See Extensible Metadata Platform (XMP) for details on contents.
See also notes about XMP handling in different containers in the class-level javadoc of this class.
TAG_X_RESOLUTION
public static final String TAG_X_RESOLUTION = "XResolution"
The number of pixels per TAG_RESOLUTION_UNIT in the TAG_IMAGE_WIDTH direction. When the image resolution is unknown, 72 [dpi] shall be designated.
- Tag = 282
- Type = Unsigned rational
- Count = 1
- Default = 72
| See also | |
|---|---|
TAG_Y_RESOLUTION |
|
TAG_RESOLUTION_UNIT |
TAG_Y_CB_CR_COEFFICIENTS
public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients"
The matrix coefficients for transformation from RGB to YCbCr image data. About the default value, please refer to JEITA CP-3451C Spec, Annex D.
- Tag = 529
- Type = Unsigned rational
- Count = 3
TAG_Y_CB_CR_POSITIONING
public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning"
The position of chrominance components in relation to the luminance component. This field is designated only for JPEG compressed data or uncompressed YCbCr data. The TIFF default is Y_CB_CR_POSITIONING_CENTERED; but when Y:Cb:Cr = 4:2:2 it is recommended in this standard that Y_CB_CR_POSITIONING_CO_SITED be used to record data, in order to improve the image quality when viewed on TV systems. When this field does not exist, the reader shall assume the TIFF default. In the case of Y:Cb:Cr = 4:2:0, the TIFF default (Y_CB_CR_POSITIONING_CENTERED) is recommended. If the Exif/DCF reader does not have the capability of supporting both kinds of positioning, it shall follow the TIFF default regardless of the value in this field. It is preferable that readers can support both centered and co-sited positioning.
- Tag = 531
- Type = Unsigned short
- Count = 1
- Default =
Y_CB_CR_POSITIONING_CENTERED
TAG_Y_CB_CR_SUB_SAMPLING
public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling"
The sampling ratio of chrominance components in relation to the luminance component. In JPEG compressed data a JPEG marker is used instead of this tag. So, this tag shall not be recorded.
- Tag = 530
- Type = Unsigned short
- Count = 2
- [2, 1] = YCbCr4:2:2
- [2, 2] = YCbCr4:2:0
- Other = reserved
TAG_Y_RESOLUTION
public static final String TAG_Y_RESOLUTION = "YResolution"
The number of pixels per TAG_RESOLUTION_UNIT in the TAG_IMAGE_WIDTH direction. The same value as TAG_X_RESOLUTION shall be designated.
- Tag = 283
- Type = Unsigned rational
- Count = 1
- Default = 72
| See also | |
|---|---|
TAG_X_RESOLUTION |
|
TAG_RESOLUTION_UNIT |
public static final int WHITEBALANCE_AUTO = 0
The constant used by TAG_WHITE_BALANCE to denote the white balance is Auto.
public static final int WHITEBALANCE_MANUAL = 1
The constant used by TAG_WHITE_BALANCE to denote the white balance is Manual.
WHITE_BALANCE_AUTO
public static final short WHITE_BALANCE_AUTO = 0
The constant used by TAG_WHITE_BALANCE to denote the white balance is Auto.
WHITE_BALANCE_MANUAL
public static final short WHITE_BALANCE_MANUAL = 1
The constant used by TAG_WHITE_BALANCE to denote the white balance is Manual.
Y_CB_CR_POSITIONING_CENTERED
public static final short Y_CB_CR_POSITIONING_CENTERED = 1
The constant used by TAG_Y_CB_CR_POSITIONING to denote Centered positioning.
Y_CB_CR_POSITIONING_CO_SITED
public static final short Y_CB_CR_POSITIONING_CO_SITED = 2
The constant used by TAG_Y_CB_CR_POSITIONING to denote Co-sited positioning.
Public constructors
ExifInterface
public ExifInterface(@NonNull FileDescriptor fileDescriptor)
Reads Exif tags from the specified image file descriptor. Attribute mutation is supported for writable and seekable file descriptors only. This constructor will not rewind the offset of the given file descriptor. Developers should close the file descriptor after use.
| Parameters | |
|---|---|
@NonNull FileDescriptor fileDescriptor |
the file descriptor of the image data |
| Throws | |
|---|---|
java.lang.NullPointerException |
if file descriptor is null |
java.io.IOException |
if an error occurs while duplicating the file descriptor. |
ExifInterface
public ExifInterface(@NonNull File file)
Reads Exif tags from the specified image file.
| Throws | |
|---|---|
java.lang.NullPointerException |
if file is null |
java.io.IOException |
if an I/O error occurs while retrieving file descriptor via |
ExifInterface
public ExifInterface(@NonNull String filename)
Reads Exif tags from the specified image file.
| Throws | |
|---|---|
java.lang.NullPointerException |
if file name is null |
java.io.IOException |
if an I/O error occurs while retrieving file descriptor via |
ExifInterface
public ExifInterface(@NonNull InputStream inputStream)
Reads Exif tags from the specified image input stream. Attribute mutation is not supported for input streams. The given input stream will proceed from its current position. Developers should close the input stream after use. This constructor is not intended to be used with an input stream that performs any networking operations.
| Parameters | |
|---|---|
@NonNull InputStream inputStream |
the input stream that contains the image data |
| Throws | |
|---|---|
java.lang.NullPointerException |
if the input stream is null |
ExifInterface
public ExifInterface(@NonNull InputStream inputStream, int streamType)
Reads Exif tags from the specified image input stream based on the stream type. Attribute mutation is not supported for input streams. The given input stream will proceed from its current position. Developers should close the input stream after use. This constructor is not intended to be used with an input stream that performs any networking operations.
| Parameters | |
|---|---|
@NonNull InputStream inputStream |
the input stream that contains the image data |
int streamType |
the type of input stream |
| Throws | |
|---|---|
java.lang.NullPointerException |
if the input stream is null |
java.io.IOException |
if an I/O error occurs while retrieving file descriptor via |
Public methods
getAltitude
public double getAltitude(double defaultValue)
Return the altitude in meters. If the exif tag does not exist, return defaultValue.
| Parameters | |
|---|---|
double defaultValue |
the value to return if the tag is not available. |
getAttribute
public @Nullable String getAttribute(@NonNull String tag)
Returns the value of the specified tag or null if there is no such tag in the image file.
getAttributeBytes
public @Nullable byte[] getAttributeBytes(@NonNull String tag)
Returns the raw bytes for the value of the requested tag inside the image file, or null if the tag is not contained.
| Returns | |
|---|---|
@Nullable byte[] |
raw bytes for the value of the requested tag, or |
getAttributeDouble
public double getAttributeDouble(@NonNull String tag, double defaultValue)
Returns the double value of the tag that is specified as rational or contains a double-formatted value. If there is no such tag in the image file or the value cannot be parsed as double, return defaultValue.
getAttributeInt
public int getAttributeInt(@NonNull String tag, int defaultValue)
Returns the integer value of the specified tag. If there is no such tag in the image file or the value cannot be parsed as integer, return defaultValue.
getAttributeRange
public @Nullable long[] getAttributeRange(@NonNull String tag)
Returns the offset and length of the requested tag inside the image file, or null if the tag is not contained.
If the attribute has been modified with setAttribute but not yet written to disk with saveAttributes, the returned range will have the correct length for the modified value, but an offset of -1 to indicate its position in the file isn't known.
| Returns | |
|---|---|
@Nullable long[] |
two-element array, the offset in the first value, and length in the second, or |
| Throws | |
|---|---|
java.lang.IllegalStateException |
if |
getGpsDateTime
public @Nullable Long getGpsDateTime()
Returns number of milliseconds since 1970-01-01 00:00:00 UTC.
getLatLong
public @Nullable double[] getLatLong()
Gets the latitude and longitude values.
If there are valid latitude and longitude values in the image, this method returns a double array where the first element is the latitude and the second element is the longitude. Otherwise, it returns null.
public boolean getLatLong(float[] output)Stores the latitude and longitude value in a float array. The first element is the latitude, and the second element is the longitude. Returns false if the Exif tags are not available.
getRotationDegrees
public int getRotationDegrees()
Returns the rotation degrees for the current image orientation. If the image is flipped, i.e., isFlipped returns true, the rotation degrees will be base on the assumption that the image is first flipped horizontally (along Y-axis), and then do the rotation. For example, ORIENTATION_TRANSPOSE will be interpreted as flipped horizontally first, and then rotate 270 degrees clockwise.
| Returns | |
|---|---|
int |
The rotation degrees of the image after the horizontal flipping is applied, if any. |
| See also | |
|---|---|
isFlipped |
getThumbnail
public @Nullable byte[] getThumbnail()
Returns the JPEG compressed thumbnail inside the image file, or null if there is no JPEG compressed thumbnail. The returned data can be decoded using decodeByteArray
getThumbnailBitmap
public @Nullable Bitmap getThumbnailBitmap()
Creates and returns a Bitmap object of the thumbnail image based on the byte array and the thumbnail compression value, or null if the compression type is unsupported.
getThumbnailBytes
public @Nullable byte[] getThumbnailBytes()
Returns the thumbnail bytes inside the image file, regardless of the compression type of the thumbnail image.
getThumbnailRange
public @Nullable long[] getThumbnailRange()
Returns the offset and length of thumbnail inside the image file, or null if either there is no thumbnail or the thumbnail bytes are stored non-consecutively.
| Returns | |
|---|---|
@Nullable long[] |
two-element array, the offset in the first value, and length in the second, or |
| Throws | |
|---|---|
java.lang.IllegalStateException |
if |
hasAttribute
public boolean hasAttribute(@NonNull String tag)
Returns true if the image file has the given attribute defined.
hasThumbnail
public boolean hasThumbnail()
Returns true if the image file has a thumbnail.
isFlipped
public boolean isFlipped()
Returns if the current image orientation is flipped.
| See also | |
|---|---|
getRotationDegrees |
isSupportedMimeType
public static boolean isSupportedMimeType(@NonNull String mimeType)
Returns whether ExifInterface currently supports reading data from the specified mime type or not.
isThumbnailCompressed
public boolean isThumbnailCompressed()
Returns true if thumbnail image is JPEG Compressed, or false if either thumbnail image does not exist or thumbnail image is uncompressed.
resetOrientation
public void resetOrientation()
Resets the TAG_ORIENTATION of the image to be ORIENTATION_NORMAL.
rotate
public void rotate(int degree)
Rotates the image by the given degree clockwise. The degree should be a multiple of 90 (e.g, 90, 180, -90, etc.).
| Parameters | |
|---|---|
int degree |
The degree of rotation. |
saveAttributes
public void saveAttributes()
Save the tag data into the original image file. This is expensive because it involves copying all the data from one file to another and deleting the old file and renaming the other. It's best to use setAttribute to set all attributes to write and make a single call rather than multiple calls for each attribute.
This method is supported for JPEG, PNG, and WebP formats.
Note: after calling this method, any attempts to obtain range information from getAttributeRange or getThumbnailRange will throw IllegalStateException, since the offsets may have changed in the newly written file.
For WebP format, the Exif data will be stored as an Extended File Format, and it may not be supported for older readers.
For PNG format, the Exif data will be stored as an "eXIf" chunk as per "Extensions to the PNG 1.2 Specification, Version 1.5.0".
| Throws | |
|---|---|
java.io.IOException |
setAttribute
public void setAttribute(@NonNull String tag, @Nullable String value)
Sets the value of the specified tag.
setGpsInfo
public void setGpsInfo(@Nullable Location location)
Sets the GPS-related information. It will set GPS processing method, latitude and longitude values, GPS timestamp, and speed information at the same time. This method is a No-Op if the location parameter is null.
setLatLong
public void setLatLong(double latitude, double longitude)
Sets the latitude and longitude values.
| Parameters | |
|---|---|
double latitude |
the decimal value of latitude. Must be a valid double value between -90.0 and 90.0. |
double longitude |
the decimal value of longitude. Must be a valid double value between -180.0 and 180.0. |
| Throws | |
|---|---|
java.lang.IllegalArgumentException |
If |