diff --git a/src/ImageSharp/Profiles/Exif/ExifTag.cs b/src/ImageSharp/Profiles/Exif/ExifTag.cs
index 4127a34ddc..43f725f0c6 100644
--- a/src/ImageSharp/Profiles/Exif/ExifTag.cs
+++ b/src/ImageSharp/Profiles/Exif/ExifTag.cs
@@ -27,6 +27,28 @@ namespace ImageSharp
///
GPSIFDOffset = 0x8825,
+ ///
+ /// SubfileType
+ ///
+ [ExifTagDescription((uint)0, "Full-resolution Image")]
+ [ExifTagDescription((uint)1, "Reduced-resolution image")]
+ [ExifTagDescription((uint)2, "Single page of multi-page image")]
+ [ExifTagDescription((uint)3, "Single page of multi-page reduced-resolution image")]
+ [ExifTagDescription((uint)4, "Transparency mask")]
+ [ExifTagDescription((uint)5, "Transparency mask of reduced-resolution image")]
+ [ExifTagDescription((uint)6, "Transparency mask of multi-page image")]
+ [ExifTagDescription((uint)7, "Transparency mask of reduced-resolution multi-page image")]
+ [ExifTagDescription((uint)0x10001, "Alternate reduced-resolution image ")]
+ SubfileType = 0x00FE,
+
+ ///
+ /// OldSubfileType
+ ///
+ [ExifTagDescription((ushort)1, "Full-resolution Image")]
+ [ExifTagDescription((ushort)2, "Reduced-resolution image")]
+ [ExifTagDescription((ushort)3, "Single page of multi-page image")]
+ OldSubfileType = 0x00FF,
+
///
/// ImageWidth
///
@@ -279,6 +301,11 @@ namespace ImageSharp
///
PageNumber = 0x0129,
+ ///
+ /// ColorResponseUnit
+ ///
+ ColorResponseUnit = 0x012C,
+
///
/// TransferFunction
///
@@ -397,6 +424,9 @@ namespace ImageSharp
///
/// ExtraSamples
///
+ [ExifTagDescription((ushort)0, "Unspecified")]
+ [ExifTagDescription((ushort)1, "Associated Alpha")]
+ [ExifTagDescription((ushort)2, "Unassociated Alpha")]
ExtraSamples = 0x0152,
///
@@ -512,6 +542,11 @@ namespace ImageSharp
///
DefaultImageColor = 0x01B2,
+ ///
+ /// T82ptions
+ ///
+ T82ptions = 0x01B3,
+
///
/// JPEGProc
///
@@ -591,11 +626,36 @@ namespace ImageSharp
///
XMP = 0x02BC,
+ ///
+ /// Rating
+ ///
+ Rating = 0x4746,
+
+ ///
+ /// RatingPercent
+ ///
+ RatingPercent = 0x4749,
+
///
/// ImageID
///
ImageID = 0x800D,
+ ///
+ /// CFARepeatPatternDim
+ ///
+ CFARepeatPatternDim = 0x828D,
+
+ ///
+ /// CFAPattern2
+ ///
+ CFAPattern2 = 0x828E,
+
+ ///
+ /// BatteryLevel
+ ///
+ BatteryLevel = 0x828F,
+
///
/// Copyright
///
@@ -611,6 +671,76 @@ namespace ImageSharp
///
FNumber = 0x829D,
+ ///
+ /// MDFileTag
+ ///
+ MDFileTag = 0x82A5,
+
+ ///
+ /// MDScalePixel
+ ///
+ MDScalePixel = 0x82A6,
+
+ ///
+ /// MDLabName
+ ///
+ MDLabName = 0x82A8,
+
+ ///
+ /// MDSampleInfo
+ ///
+ MDSampleInfo = 0x82A9,
+
+ ///
+ /// MDPrepDate
+ ///
+ MDPrepDate = 0x82AA,
+
+ ///
+ /// MDPrepTime
+ ///
+ MDPrepTime = 0x82AB,
+
+ ///
+ /// MDFileUnits
+ ///
+ MDFileUnits = 0x82AC,
+
+ ///
+ /// PixelScale
+ ///
+ PixelScale = 0x830E,
+
+ ///
+ /// IntergraphPacketData
+ ///
+ IntergraphPacketData = 0x847E,
+
+ ///
+ /// IntergraphRegisters
+ ///
+ IntergraphRegisters = 0x847F,
+
+ ///
+ /// IntergraphMatrix
+ ///
+ IntergraphMatrix = 0x8480,
+
+ ///
+ /// ModelTiePoint
+ ///
+ ModelTiePoint = 0x8482,
+
+ ///
+ /// SEMInfo
+ ///
+ SEMInfo = 0x8546,
+
+ ///
+ /// ModelTransform
+ ///
+ ModelTransform = 0x85D8,
+
///
/// ImageLayer
///
@@ -646,6 +776,74 @@ namespace ImageSharp
///
OECF = 0x8828,
+ ///
+ /// Interlace
+ ///
+ Interlace = 0x8829,
+
+ ///
+ /// TimeZoneOffset
+ ///
+ TimeZoneOffset = 0x882A,
+
+ ///
+ /// SelfTimerMode
+ ///
+ SelfTimerMode = 0x882B,
+
+ ///
+ /// SensitivityType
+ ///
+ [ExifTagDescription((ushort)0, "Unknown")]
+ [ExifTagDescription((ushort)1, "Standard Output Sensitivity")]
+ [ExifTagDescription((ushort)2, "Recommended Exposure Index")]
+ [ExifTagDescription((ushort)3, "ISO Speed")]
+ [ExifTagDescription((ushort)4, "Standard Output Sensitivity and Recommended Exposure Index")]
+ [ExifTagDescription((ushort)5, "Standard Output Sensitivity and ISO Speed")]
+ [ExifTagDescription((ushort)6, "Recommended Exposure Index and ISO Speed")]
+ [ExifTagDescription((ushort)7, "Standard Output Sensitivity, Recommended Exposure Index and ISO Speed")]
+ SensitivityType = 0x8830,
+
+ ///
+ /// StandardOutputSensitivity
+ ///
+ StandardOutputSensitivity = 0x8831,
+
+ ///
+ /// RecommendedExposureIndex
+ ///
+ RecommendedExposureIndex = 0x8832,
+
+ ///
+ /// ISOSpeed
+ ///
+ ISOSpeed = 0x8833,
+
+ ///
+ /// ISOSpeedLatitudeyyy
+ ///
+ ISOSpeedLatitudeyyy = 0x8834,
+
+ ///
+ /// ISOSpeedLatitudezzz
+ ///
+ ISOSpeedLatitudezzz = 0x8835,
+
+ ///
+ /// FaxRecvParams
+ ///
+ FaxRecvParams = 0x885C,
+
+ ///
+ /// FaxSubaddress
+ ///
+ FaxSubaddress = 0x885D,
+
+ ///
+ /// FaxRecvTime
+ ///
+ FaxRecvTime = 0x885E,
+
///
/// ExifVersion
///
@@ -661,6 +859,21 @@ namespace ImageSharp
///
DateTimeDigitized = 0x9004,
+ ///
+ /// OffsetTime
+ ///
+ OffsetTime = 0x9010,
+
+ ///
+ /// OffsetTimeOriginal
+ ///
+ OffsetTimeOriginal = 0x9011,
+
+ ///
+ /// OffsetTimeDigitized
+ ///
+ OffsetTimeDigitized = 0x9012,
+
///
/// ComponentsConfiguration
///
@@ -778,11 +991,88 @@ namespace ImageSharp
///
FocalLength = 0x920A,
+ ///
+ /// FlashEnergy2
+ ///
+ FlashEnergy2 = 0x920B,
+
+ ///
+ /// SpatialFrequencyResponse2
+ ///
+ SpatialFrequencyResponse2 = 0x920C,
+
+ ///
+ /// Noise
+ ///
+ Noise = 0x920D,
+
+ ///
+ /// FocalPlaneXResolution2
+ ///
+ FocalPlaneXResolution2 = 0x920E,
+
+ ///
+ /// FocalPlaneYResolution2
+ ///
+ FocalPlaneYResolution2 = 0x920F,
+
+ ///
+ /// FocalPlaneResolutionUnit2
+ ///
+ [ExifTagDescription((ushort)1, "None")]
+ [ExifTagDescription((ushort)2, "Inches")]
+ [ExifTagDescription((ushort)3, "Centimeter")]
+ [ExifTagDescription((ushort)4, "Millimeter")]
+ [ExifTagDescription((ushort)5, "Micrometer")]
+ FocalPlaneResolutionUnit2 = 0x9210,
+
+ ///
+ /// ImageNumber
+ ///
+ ImageNumber = 0x9211,
+
+ ///
+ /// SecurityClassification
+ ///
+ [ExifTagDescription("C", "Confidential")]
+ [ExifTagDescription("R", "Restricted")]
+ [ExifTagDescription("S", "Secret")]
+ [ExifTagDescription("T", "Top Secret")]
+ [ExifTagDescription("U", "Unclassified")]
+ SecurityClassification = 0x9212,
+
+ ///
+ /// ImageHistory
+ ///
+ ImageHistory = 0x9213,
+
///
/// SubjectArea
///
SubjectArea = 0x9214,
+ ///
+ /// ExposureIndex2
+ ///
+ ExposureIndex2 = 0x9215,
+
+ ///
+ /// TIFFEPStandardID
+ ///
+ TIFFEPStandardID = 0x9216,
+
+ ///
+ /// SensingMethod
+ ///
+ [ExifTagDescription((ushort)1, "Not defined")]
+ [ExifTagDescription((ushort)2, "One-chip color area")]
+ [ExifTagDescription((ushort)3, "Two-chip color area")]
+ [ExifTagDescription((ushort)4, "Three-chip color area")]
+ [ExifTagDescription((ushort)5, "Color sequential area")]
+ [ExifTagDescription((ushort)7, "Trilinear")]
+ [ExifTagDescription((ushort)8, "Color sequential linear")]
+ SensingMethod2 = 0x9217,
+
///
/// MakerNote
///
@@ -808,6 +1098,66 @@ namespace ImageSharp
///
SubsecTimeDigitized = 0x9292,
+ ///
+ /// ImageSourceData
+ ///
+ ImageSourceData = 0x935C,
+
+ ///
+ /// AmbientTemperature
+ ///
+ AmbientTemperature = 0x9400,
+
+ ///
+ /// Humidity
+ ///
+ Humidity = 0x9401,
+
+ ///
+ /// Pressure
+ ///
+ Pressure = 0x9402,
+
+ ///
+ /// WaterDepth
+ ///
+ WaterDepth = 0x9403,
+
+ ///
+ /// Acceleration
+ ///
+ Acceleration = 0x9404,
+
+ ///
+ /// CameraElevationAngle
+ ///
+ CameraElevationAngle = 0x9405,
+
+ ///
+ /// XPTitle
+ ///
+ XPTitle = 0x9C9B,
+
+ ///
+ /// XPComment
+ ///
+ XPComment = 0x9C9C,
+
+ ///
+ /// XPAuthor
+ ///
+ XPAuthor = 0x9C9D,
+
+ ///
+ /// XPKeywords
+ ///
+ XPKeywords = 0x9C9E,
+
+ ///
+ /// XPSubject
+ ///
+ XPSubject = 0x9C9F,
+
///
/// FlashpixVersion
///
@@ -999,6 +1349,46 @@ namespace ImageSharp
///
ImageUniqueID = 0xA420,
+ ///
+ /// OwnerName
+ ///
+ OwnerName = 0xA430,
+
+ ///
+ /// SerialNumber
+ ///
+ SerialNumber = 0xA431,
+
+ ///
+ /// LensInfo
+ ///
+ LensInfo = 0xA432,
+
+ ///
+ /// LensMake
+ ///
+ LensMake = 0xA433,
+
+ ///
+ /// LensModel
+ ///
+ LensModel = 0xA434,
+
+ ///
+ /// LensSerialNumber
+ ///
+ LensSerialNumber = 0xA435,
+
+ ///
+ /// GDALMetadata
+ ///
+ GDALMetadata = 0xA480,
+
+ ///
+ /// GDALNoData
+ ///
+ GDALNoData = 0xA481,
+
///
/// GPSVersionID
///
diff --git a/src/ImageSharp/Profiles/Exif/ExifValue.cs b/src/ImageSharp/Profiles/Exif/ExifValue.cs
index 0cbb1a50be..bd0f2bede6 100644
--- a/src/ImageSharp/Profiles/Exif/ExifValue.cs
+++ b/src/ImageSharp/Profiles/Exif/ExifValue.cs
@@ -268,14 +268,32 @@ namespace ImageSharp
case ExifTag.InkNames:
case ExifTag.TargetPrinter:
case ExifTag.ImageID:
+ case ExifTag.MDLabName:
+ case ExifTag.MDSampleInfo:
+ case ExifTag.MDPrepDate:
+ case ExifTag.MDPrepTime:
+ case ExifTag.MDFileUnits:
+ case ExifTag.SEMInfo:
case ExifTag.SpectralSensitivity:
case ExifTag.DateTimeOriginal:
case ExifTag.DateTimeDigitized:
case ExifTag.SubsecTime:
case ExifTag.SubsecTimeOriginal:
case ExifTag.SubsecTimeDigitized:
- case ExifTag.RelatedSoundFile:
+ case ExifTag.FaxSubaddress:
+ case ExifTag.OffsetTime:
+ case ExifTag.OffsetTimeOriginal:
+ case ExifTag.OffsetTimeDigitized:
+ case ExifTag.SecurityClassification:
+ case ExifTag.ImageHistory:
case ExifTag.ImageUniqueID:
+ case ExifTag.OwnerName:
+ case ExifTag.SerialNumber:
+ case ExifTag.LensMake:
+ case ExifTag.LensModel:
+ case ExifTag.LensSerialNumber:
+ case ExifTag.GDALMetadata:
+ case ExifTag.GDALNoData:
case ExifTag.GPSLatitudeRef:
case ExifTag.GPSLongitudeRef:
case ExifTag.GPSSatellites:
@@ -296,6 +314,13 @@ namespace ImageSharp
case ExifTag.ClipPath:
case ExifTag.VersionYear:
case ExifTag.XMP:
+ case ExifTag.CFAPattern2:
+ case ExifTag.TIFFEPStandardID:
+ case ExifTag.XPTitle:
+ case ExifTag.XPComment:
+ case ExifTag.XPAuthor:
+ case ExifTag.XPKeywords:
+ case ExifTag.XPSubject:
case ExifTag.GPSVersionID:
exifValue = new ExifValue(tag, ExifDataType.Byte, true);
break;
@@ -307,6 +332,7 @@ namespace ImageSharp
case ExifTag.FreeOffsets:
case ExifTag.FreeByteCounts:
+ case ExifTag.ColorResponseUnit:
case ExifTag.TileOffsets:
case ExifTag.SMinSampleValue:
case ExifTag.SMaxSampleValue:
@@ -314,8 +340,11 @@ namespace ImageSharp
case ExifTag.JPEGDCTables:
case ExifTag.JPEGACTables:
case ExifTag.StripRowCounts:
+ case ExifTag.IntergraphRegisters:
+ case ExifTag.TimeZoneOffset:
exifValue = new ExifValue(tag, ExifDataType.Long, true);
break;
+ case ExifTag.SubfileType:
case ExifTag.SubIFDOffset:
case ExifTag.GPSIFDOffset:
case ExifTag.T4Options:
@@ -324,8 +353,18 @@ namespace ImageSharp
case ExifTag.YClipPathUnits:
case ExifTag.ProfileType:
case ExifTag.CodingMethods:
+ case ExifTag.T82ptions:
case ExifTag.JPEGInterchangeFormat:
case ExifTag.JPEGInterchangeFormatLength:
+ case ExifTag.MDFileTag:
+ case ExifTag.StandardOutputSensitivity:
+ case ExifTag.RecommendedExposureIndex:
+ case ExifTag.ISOSpeed:
+ case ExifTag.ISOSpeedLatitudeyyy:
+ case ExifTag.ISOSpeedLatitudezzz:
+ case ExifTag.FaxRecvParams:
+ case ExifTag.FaxRecvTime:
+ case ExifTag.ImageNumber:
exifValue = new ExifValue(tag, ExifDataType.Long, false);
break;
@@ -333,6 +372,10 @@ namespace ImageSharp
case ExifTag.PrimaryChromaticities:
case ExifTag.YCbCrCoefficients:
case ExifTag.ReferenceBlackWhite:
+ case ExifTag.PixelScale:
+ case ExifTag.IntergraphMatrix:
+ case ExifTag.ModelTiePoint:
+ case ExifTag.ModelTransform:
case ExifTag.GPSLatitude:
case ExifTag.GPSLongitude:
case ExifTag.GPSTimestamp:
@@ -344,18 +387,28 @@ namespace ImageSharp
case ExifTag.YPosition:
case ExifTag.XResolution:
case ExifTag.YResolution:
+ case ExifTag.BatteryLevel:
case ExifTag.ExposureTime:
case ExifTag.FNumber:
+ case ExifTag.MDScalePixel:
case ExifTag.CompressedBitsPerPixel:
case ExifTag.ApertureValue:
case ExifTag.MaxApertureValue:
case ExifTag.SubjectDistance:
case ExifTag.FocalLength:
+ case ExifTag.FlashEnergy2:
+ case ExifTag.FocalPlaneXResolution2:
+ case ExifTag.FocalPlaneYResolution2:
+ case ExifTag.ExposureIndex2:
+ case ExifTag.Humidity:
+ case ExifTag.Pressure:
+ case ExifTag.Acceleration:
case ExifTag.FlashEnergy:
case ExifTag.FocalPlaneXResolution:
case ExifTag.FocalPlaneYResolution:
case ExifTag.ExposureIndex:
case ExifTag.DigitalZoomRatio:
+ case ExifTag.LensInfo:
case ExifTag.GPSAltitude:
case ExifTag.GPSDOP:
case ExifTag.GPSSpeed:
@@ -382,11 +435,14 @@ namespace ImageSharp
case ExifTag.JPEGLosslessPredictors:
case ExifTag.JPEGPointTransforms:
case ExifTag.YCbCrSubsampling:
+ case ExifTag.CFARepeatPatternDim:
+ case ExifTag.IntergraphPacketData:
case ExifTag.ISOSpeedRatings:
case ExifTag.SubjectArea:
case ExifTag.SubjectLocation:
exifValue = new ExifValue(tag, ExifDataType.Short, true);
break;
+ case ExifTag.OldSubfileType:
case ExifTag.Compression:
case ExifTag.PhotometricInterpretation:
case ExifTag.Thresholding:
@@ -407,9 +463,16 @@ namespace ImageSharp
case ExifTag.JPEGProc:
case ExifTag.JPEGRestartInterval:
case ExifTag.YCbCrPositioning:
+ case ExifTag.Rating:
+ case ExifTag.RatingPercent:
case ExifTag.ExposureProgram:
+ case ExifTag.Interlace:
+ case ExifTag.SelfTimerMode:
+ case ExifTag.SensitivityType:
case ExifTag.MeteringMode:
case ExifTag.LightSource:
+ case ExifTag.FocalPlaneResolutionUnit2:
+ case ExifTag.SensingMethod2:
case ExifTag.Flash:
case ExifTag.ColorSpace:
case ExifTag.FocalPlaneResolutionUnit:
@@ -434,6 +497,9 @@ namespace ImageSharp
case ExifTag.ShutterSpeedValue:
case ExifTag.BrightnessValue:
case ExifTag.ExposureBiasValue:
+ case ExifTag.AmbientTemperature:
+ case ExifTag.WaterDepth:
+ case ExifTag.CameraElevationAngle:
exifValue = new ExifValue(tag, ExifDataType.SignedRational, false);
break;
@@ -445,8 +511,11 @@ namespace ImageSharp
case ExifTag.UserComment:
case ExifTag.FlashpixVersion:
case ExifTag.SpatialFrequencyResponse:
+ case ExifTag.SpatialFrequencyResponse2:
+ case ExifTag.Noise:
case ExifTag.CFAPattern:
case ExifTag.DeviceSettingDescription:
+ case ExifTag.ImageSourceData:
case ExifTag.GPSProcessingMethod:
case ExifTag.GPSAreaInformation:
exifValue = new ExifValue(tag, ExifDataType.Undefined, true);
diff --git a/src/ImageSharp/Profiles/Exif/ExifWriter.cs b/src/ImageSharp/Profiles/Exif/ExifWriter.cs
index beb0cfe0e1..f7653b240f 100644
--- a/src/ImageSharp/Profiles/Exif/ExifWriter.cs
+++ b/src/ImageSharp/Profiles/Exif/ExifWriter.cs
@@ -12,8 +12,10 @@ namespace ImageSharp
internal sealed class ExifWriter
{
- private static readonly ExifTag[] IfdTags = new ExifTag[93]
+ private static readonly ExifTag[] IfdTags = new ExifTag[127]
{
+ ExifTag.SubfileType,
+ ExifTag.OldSubfileType,
ExifTag.ImageWidth,
ExifTag.ImageLength,
ExifTag.BitsPerSample,
@@ -23,6 +25,7 @@ namespace ImageSharp
ExifTag.CellWidth,
ExifTag.CellLength,
ExifTag.FillOrder,
+ ExifTag.DocumentName,
ExifTag.ImageDescription,
ExifTag.Make,
ExifTag.Model,
@@ -36,29 +39,27 @@ namespace ImageSharp
ExifTag.XResolution,
ExifTag.YResolution,
ExifTag.PlanarConfiguration,
+ ExifTag.PageName,
+ ExifTag.XPosition,
+ ExifTag.YPosition,
ExifTag.FreeOffsets,
ExifTag.FreeByteCounts,
ExifTag.GrayResponseUnit,
ExifTag.GrayResponseCurve,
+ ExifTag.T4Options,
+ ExifTag.T6Options,
ExifTag.ResolutionUnit,
+ ExifTag.PageNumber,
+ ExifTag.ColorResponseUnit,
+ ExifTag.TransferFunction,
ExifTag.Software,
ExifTag.DateTime,
ExifTag.Artist,
ExifTag.HostComputer,
- ExifTag.ColorMap,
- ExifTag.ExtraSamples,
- ExifTag.Copyright,
- ExifTag.DocumentName,
- ExifTag.PageName,
- ExifTag.XPosition,
- ExifTag.YPosition,
- ExifTag.T4Options,
- ExifTag.T6Options,
- ExifTag.PageNumber,
- ExifTag.TransferFunction,
ExifTag.Predictor,
ExifTag.WhitePoint,
ExifTag.PrimaryChromaticities,
+ ExifTag.ColorMap,
ExifTag.HalftoneHints,
ExifTag.TileWidth,
ExifTag.TileLength,
@@ -72,6 +73,7 @@ namespace ImageSharp
ExifTag.NumberOfInks,
ExifTag.DotRange,
ExifTag.TargetPrinter,
+ ExifTag.ExtraSamples,
ExifTag.SampleFormat,
ExifTag.SMinSampleValue,
ExifTag.SMaxSampleValue,
@@ -89,6 +91,7 @@ namespace ImageSharp
ExifTag.ModeNumber,
ExifTag.Decode,
ExifTag.DefaultImageColor,
+ ExifTag.T82ptions,
ExifTag.JPEGProc,
ExifTag.JPEGInterchangeFormat,
ExifTag.JPEGInterchangeFormatLength,
@@ -105,11 +108,42 @@ namespace ImageSharp
ExifTag.ReferenceBlackWhite,
ExifTag.StripRowCounts,
ExifTag.XMP,
+ ExifTag.Rating,
+ ExifTag.RatingPercent,
ExifTag.ImageID,
- ExifTag.ImageLayer
+ ExifTag.CFARepeatPatternDim,
+ ExifTag.CFAPattern2,
+ ExifTag.BatteryLevel,
+ ExifTag.Copyright,
+ ExifTag.MDFileTag,
+ ExifTag.MDScalePixel,
+ ExifTag.MDLabName,
+ ExifTag.MDSampleInfo,
+ ExifTag.MDPrepDate,
+ ExifTag.MDPrepTime,
+ ExifTag.MDFileUnits,
+ ExifTag.PixelScale,
+ ExifTag.IntergraphPacketData,
+ ExifTag.IntergraphRegisters,
+ ExifTag.IntergraphMatrix,
+ ExifTag.ModelTiePoint,
+ ExifTag.SEMInfo,
+ ExifTag.ModelTransform,
+ ExifTag.ImageLayer,
+ ExifTag.FaxRecvParams,
+ ExifTag.FaxSubaddress,
+ ExifTag.FaxRecvTime,
+ ExifTag.ImageSourceData,
+ ExifTag.XPTitle,
+ ExifTag.XPComment,
+ ExifTag.XPAuthor,
+ ExifTag.XPKeywords,
+ ExifTag.XPSubject,
+ ExifTag.GDALMetadata,
+ ExifTag.GDALNoData
};
- private static readonly ExifTag[] ExifTags = new ExifTag[56]
+ private static readonly ExifTag[] ExifTags = new ExifTag[92]
{
ExifTag.ExposureTime,
ExifTag.FNumber,
@@ -117,9 +151,21 @@ namespace ImageSharp
ExifTag.SpectralSensitivity,
ExifTag.ISOSpeedRatings,
ExifTag.OECF,
+ ExifTag.Interlace,
+ ExifTag.TimeZoneOffset,
+ ExifTag.SelfTimerMode,
+ ExifTag.SensitivityType,
+ ExifTag.StandardOutputSensitivity,
+ ExifTag.RecommendedExposureIndex,
+ ExifTag.ISOSpeed,
+ ExifTag.ISOSpeedLatitudeyyy,
+ ExifTag.ISOSpeedLatitudezzz,
ExifTag.ExifVersion,
ExifTag.DateTimeOriginal,
ExifTag.DateTimeDigitized,
+ ExifTag.OffsetTime,
+ ExifTag.OffsetTimeOriginal,
+ ExifTag.OffsetTimeDigitized,
ExifTag.ComponentsConfiguration,
ExifTag.CompressedBitsPerPixel,
ExifTag.ShutterSpeedValue,
@@ -132,12 +178,30 @@ namespace ImageSharp
ExifTag.LightSource,
ExifTag.Flash,
ExifTag.FocalLength,
+ ExifTag.FlashEnergy2,
+ ExifTag.SpatialFrequencyResponse2,
+ ExifTag.Noise,
+ ExifTag.FocalPlaneXResolution2,
+ ExifTag.FocalPlaneYResolution2,
+ ExifTag.FocalPlaneResolutionUnit2,
+ ExifTag.ImageNumber,
+ ExifTag.SecurityClassification,
+ ExifTag.ImageHistory,
ExifTag.SubjectArea,
+ ExifTag.ExposureIndex2,
+ ExifTag.TIFFEPStandardID,
+ ExifTag.SensingMethod2,
ExifTag.MakerNote,
ExifTag.UserComment,
ExifTag.SubsecTime,
ExifTag.SubsecTimeOriginal,
ExifTag.SubsecTimeDigitized,
+ ExifTag.AmbientTemperature,
+ ExifTag.Humidity,
+ ExifTag.Pressure,
+ ExifTag.WaterDepth,
+ ExifTag.Acceleration,
+ ExifTag.CameraElevationAngle,
ExifTag.FlashpixVersion,
ExifTag.ColorSpace,
ExifTag.PixelXDimension,
@@ -166,8 +230,14 @@ namespace ImageSharp
ExifTag.Sharpness,
ExifTag.DeviceSettingDescription,
ExifTag.SubjectDistanceRange,
- ExifTag.ImageUniqueID
- };
+ ExifTag.ImageUniqueID,
+ ExifTag.OwnerName,
+ ExifTag.SerialNumber,
+ ExifTag.LensInfo,
+ ExifTag.LensMake,
+ ExifTag.LensModel,
+ ExifTag.LensSerialNumber
+ };
private static readonly ExifTag[] GPSTags = new ExifTag[31]
{