Unit xomTif

Description

 

Overview

Classes, Interfaces, Objects and Records

Name Description
Record TTifOrientationHelper  
Record TTifStripData  
Class TJpgMarker  
Class TJpgMarkers  
Class TIPTCResource  
Class TIPTCResources  
Class TTifTag  
Class TTifTags  
Class TTifIFD  
Class TTifIFDs  
Class TTempFileHandling  
Class TTifVideoHeader  
Class TMetaFileFormat  
Class TTif  
Class TTifs  
Class TTifModel  

Functions and Procedures

function ExifDateToDateTime( AStr: WideString): TDateTime;
function ExifDateAndTimeZoneToDateTime(const AExifStr: WideString; const AOffsetStr: WideString): TDateTime;
function ExifDateToISODateTimeString(const AStr: WideString; ATimeZone: Double): WideString;
function DateTimeToExifDate (const ADateTime: TDateTime): AnsiString;
function TimeZoneToExifTimeZoneString( ATimeZone: Double): WideString;
function ExifTimeZoneStringToTimeZone(const AStr: WideString): Double;
function JPGSaveMaxSize (AGraphic: TGraphic; AFileName: WideString; AMaxSize: Cardinal; AExif: TTif = nil): Boolean;
function TranslateExifValue(AValueTag: TTifTag; const ATagEntry: TTagEntry): WideString;
function CleanExifCacheFor (const AFileName: WideString): Boolean;
function FindTagEntry (ATagNumber: Integer; out ATagEntry: TTagEntry; ATypes: TIFDTypes = [itBase..itMakerNotes]): Boolean;
function TifByteOrderToByteOrder(AByteOrder: TTifByteOrder): TByteOrder;
procedure LockMetadataRead(const ALockString: WideString);
procedure UnlockMetadataRead(const ALockString: WideString);
procedure LockMetadataWrite(const ALockString: WideString);
procedure UnlockMetadataWrite(const ALockString: WideString);
procedure xomTif_initialization;
procedure xomTif_finalization;

Types

TMetaEncodingMethod = (...);
TJpegAppMarker = (...);
TTifOrientation = (...);
TTifEntryTable = array of TTagEntry;
TTifByteOrder = (...);
TTifImageDataType = (...);
TTifTagDataFormat = (...);
TIFDType = (...);
TIFDTypes = set of TIFDType;
TTagType = (...);
TTifCacheSetting = (...);
TTifCacheSettings = set of TTifCacheSetting;
TExif = TTif;
TExifs = TTifs;
TExifModel = TTifModel;

Constants

cStringOffset = 1;
cExifTag = TIFFTAG_EXIFIFD;
cIptcTag = TIFFTAG_RICHTIFFIPTC;
cExifVersion = '0230';
cGPSVersion = '2.2.0.0';
cXMPExtension: WideString = '.xmp';
cTifTempExtension: WideString = '.idi_temp';
cColorSpace_Embedded = 'Embedded';
cColorSpace_ICCProfile = 'ICCProfile';
cColorSpace_sBW = 'sBW';
cColorSpace_sRGB = 'sRGB';
cColorSpace_AdobeRGB = 'AdobeRGB';
cColorSpace_CMYK = 'CMYK';
cColorSpace_CIELab = 'CIELab';
cColorSpace_ITULab = 'ITULab';
cColorSpace_ProPhotoRGB = 'ProPhotoRGB';
cColorSpace_WideGamutRGB = 'WideGamutRGB';
cColorSpace_Uncalibrated = 'Uncalibrated';

Variables

ExifCache: TCache = nil;
MetaDataEncoding: TMetaEncodingMethod = memUTF8;
AllowTIFWriting: Boolean = True;
UpdateSoftwareTag: Boolean = False;
TIFcanbeRAW: Boolean = False;

Description

Functions and Procedures

function ExifDateToDateTime( AStr: WideString): TDateTime;

convert an Exif formatted date string (yyyy:mm:dd hh:nn:ss) to a TDateTime

function ExifDateAndTimeZoneToDateTime(const AExifStr: WideString; const AOffsetStr: WideString): TDateTime;

convert an Exif formatted date string (yyyy:mm:dd hh:nn:ss) to a TDateTime

function ExifDateToISODateTimeString(const AStr: WideString; ATimeZone: Double): WideString;

convert an Exif formatted date string (yyyy:mm:dd hh:nn:ss) to an ISO date string

function DateTimeToExifDate (const ADateTime: TDateTime): AnsiString;

convert a TDateTime to an Exif date string (yyyy:mm:dd hh:nn:ss)

function TimeZoneToExifTimeZoneString( ATimeZone: Double): WideString;
 
function ExifTimeZoneStringToTimeZone(const AStr: WideString): Double;
 
function JPGSaveMaxSize (AGraphic: TGraphic; AFileName: WideString; AMaxSize: Cardinal; AExif: TTif = nil): Boolean;
 
function TranslateExifValue(AValueTag: TTifTag; const ATagEntry: TTagEntry): WideString;
 
function CleanExifCacheFor (const AFileName: WideString): Boolean;
 
function FindTagEntry (ATagNumber: Integer; out ATagEntry: TTagEntry; ATypes: TIFDTypes = [itBase..itMakerNotes]): Boolean;
 
function TifByteOrderToByteOrder(AByteOrder: TTifByteOrder): TByteOrder;
 
procedure LockMetadataRead(const ALockString: WideString);
 
procedure UnlockMetadataRead(const ALockString: WideString);
 
procedure LockMetadataWrite(const ALockString: WideString);
 
procedure UnlockMetadataWrite(const ALockString: WideString);
 
procedure xomTif_initialization;
 
procedure xomTif_finalization;
 

Types

TMetaEncodingMethod = (...);
 
Values
  • memAnsi
  • memUTF8
  • memUnicode
TJpegAppMarker = (...);
 
Values
  • jaJfifApp
  • jaJfxxApp
  • jaExifApp
  • jaXmpApp
  • jaIccApp
  • jaMetaApp
  • jaPictureApp
  • jaDuckyApp
  • jaIptcApp
  • jaAdobeApp
  • jaCommentApp
TTifOrientation = (...);
 
Values
  • tosUnknown: 0
  • tosNormal: 1
  • tosNormalFlipped: 2
  • tosRotated180: 3
  • tosRotated180Flipped: 4
  • tosClockwiseFlipped: 5
  • tosClockwise: 6
  • tosCounterClockwiseFlipped: 7
  • tosCounterClockwise: 8
TTifEntryTable = array of TTagEntry;
 
TTifByteOrder = (...);
 
Values
  • tboUnknown
  • tboIntel
  • tboMotorola
  • tboDerived
TTifImageDataType = (...);
 
Values
  • tidtStriped
  • tidtTiled
TTifTagDataFormat = (...);
 
Values
  • tdfUnknown
  • tdfUnsignedByte
  • tdfAsciiString
  • tdfUnsignedShort
  • tdfUnsignedLong
  • tdfUnsignedRational
  • tdfSignedByte
  • tdfUndefined
  • tdfSignedShort
  • tdfSignedLong
  • tdfSignedRational
  • tdfSingleFloat
  • tdfDoubleFloat
  • tdfIFD
TIFDType = (...);
 
Values
  • itBase
  • itExif
  • itIPTC
  • itPhotoshop
  • itInterExif
  • itGps
  • itMakerNotes
TIFDTypes = set of TIFDType;
 
TTagType = (...);
 
Values
  • ttSHORT
  • ttLONG
TTifCacheSetting = (...);
 
Values
  • tcLoad
  • tcSave
TTifCacheSettings = set of TTifCacheSetting;
 
TExif = TTif;
 
TExifs = TTifs;
 
TExifModel = TTifModel;
 

Constants

cStringOffset = 1;
 
cExifTag = TIFFTAG_EXIFIFD;
 
cIptcTag = TIFFTAG_RICHTIFFIPTC;
 
cExifVersion = '0230';
 
cGPSVersion = '2.2.0.0';
 
cXMPExtension: WideString = '.xmp';
 
cTifTempExtension: WideString = '.idi_temp';

lowercase!

cColorSpace_Embedded = 'Embedded';
 
cColorSpace_ICCProfile = 'ICCProfile';
 
cColorSpace_sBW = 'sBW';
 
cColorSpace_sRGB = 'sRGB';
 
cColorSpace_AdobeRGB = 'AdobeRGB';
 
cColorSpace_CMYK = 'CMYK';
 
cColorSpace_CIELab = 'CIELab';
 
cColorSpace_ITULab = 'ITULab';
 
cColorSpace_ProPhotoRGB = 'ProPhotoRGB';
 
cColorSpace_WideGamutRGB = 'WideGamutRGB';
 
cColorSpace_Uncalibrated = 'Uncalibrated';
 

Variables

ExifCache: TCache = nil;
 
MetaDataEncoding: TMetaEncodingMethod = memUTF8;
 
AllowTIFWriting: Boolean = True;
 
UpdateSoftwareTag: Boolean = False;

a public setting to allow or disallow metadata writing to files

TIFcanbeRAW: Boolean = False;

allow the software tag to be updated to our own, even when it pre-exists


Generated by PasDoc 0.15.0.