diff --git a/src/ImageSharp/Formats/Tiff/TiffFrameMetadata.cs b/src/ImageSharp/Formats/Tiff/TiffFrameMetadata.cs
index 21a24896d..5d3674422 100644
--- a/src/ImageSharp/Formats/Tiff/TiffFrameMetadata.cs
+++ b/src/ImageSharp/Formats/Tiff/TiffFrameMetadata.cs
@@ -43,13 +43,11 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Tiff
///
/// Gets a general indication of the kind of data contained in this subfile.
///
- /// A general indication of the kind of data contained in this subfile.
public TiffNewSubfileType SubfileType => (TiffNewSubfileType?)this.ExifProfile.GetValue(ExifTag.SubfileType)?.Value ?? TiffNewSubfileType.FullImage;
///
/// Gets a general indication of the kind of data contained in this subfile.
///
- /// A general indication of the kind of data contained in this subfile.
public TiffSubfileType? OldSubfileType => (TiffSubfileType?)this.ExifProfile.GetValue(ExifTag.OldSubfileType)?.Value;
///
@@ -154,33 +152,6 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Tiff
///
internal TiffFillOrder FillOrder => (TiffFillOrder?)this.ExifProfile.GetValue(ExifTag.FillOrder)?.Value ?? TiffFillOrder.MostSignificantBitFirst;
- ///
- /// Gets or sets the a string that describes the subject of the image.
- ///
- public string ImageDescription
- {
- get => this.ExifProfile.GetValue(ExifTag.ImageDescription)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.ImageDescription, value);
- }
-
- ///
- /// Gets or sets the scanner manufacturer.
- ///
- public string Make
- {
- get => this.ExifProfile.GetValue(ExifTag.Make)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.Make, value);
- }
-
- ///
- /// Gets or sets the scanner model name or number.
- ///
- public string Model
- {
- get => this.ExifProfile.GetValue(ExifTag.Model)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.Model, value);
- }
-
///
/// Gets for each strip, the byte offset of that strip.
///
@@ -259,42 +230,6 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Tiff
///
public PixelResolutionUnit ResolutionUnit => this.GetResolutionUnit();
- ///
- /// Gets or sets the name and version number of the software package(s) used to create the image.
- ///
- public string Software
- {
- get => this.ExifProfile.GetValue(ExifTag.Software)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.Software, value);
- }
-
- ///
- /// Gets or sets the date and time of image creation.
- ///
- public string DateTime
- {
- get => this.ExifProfile.GetValue(ExifTag.DateTime)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.DateTime, value);
- }
-
- ///
- /// Gets or sets the person who created the image.
- ///
- public string Artist
- {
- get => this.ExifProfile.GetValue(ExifTag.Artist)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.Artist, value);
- }
-
- ///
- /// Gets or sets the computer and/or operating system in use at the time of image creation.
- ///
- public string HostComputer
- {
- get => this.ExifProfile.GetValue(ExifTag.HostComputer)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.HostComputer, value);
- }
-
///
/// Gets a color map for palette color images.
///
@@ -305,15 +240,6 @@ namespace SixLabors.ImageSharp.Formats.Experimental.Tiff
///
public ushort[] ExtraSamples => this.ExifProfile.GetValue(ExifTag.ExtraSamples)?.Value;
- ///
- /// Gets or sets the copyright notice.
- ///
- public string Copyright
- {
- get => this.ExifProfile.GetValue(ExifTag.Copyright)?.Value;
- set => this.ExifProfile.SetValue(ExifTag.Copyright, value);
- }
-
///
/// Gets a mathematical operator that is applied to the image data before an encoding scheme is applied.
///
diff --git a/tests/ImageSharp.Tests/Formats/Tiff/TiffMetadataTests.cs b/tests/ImageSharp.Tests/Formats/Tiff/TiffMetadataTests.cs
index e4b935e0f..b2eb3add9 100644
--- a/tests/ImageSharp.Tests/Formats/Tiff/TiffMetadataTests.cs
+++ b/tests/ImageSharp.Tests/Formats/Tiff/TiffMetadataTests.cs
@@ -191,9 +191,9 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Equal(TiffBitsPerSample.Four, frame.BitsPerSample);
Assert.Equal(TiffCompression.Lzw, frame.Compression);
Assert.Equal(TiffPhotometricInterpretation.PaletteColor, frame.PhotometricInterpretation);
- Assert.Equal("This is Название", frame.ImageDescription);
- Assert.Equal("This is Изготовитель камеры", frame.Make);
- Assert.Equal("This is Модель камеры", frame.Model);
+ Assert.Equal("This is Название", frame.ExifProfile.GetValue(ExifTag.ImageDescription).Value);
+ Assert.Equal("This is Изготовитель камеры", frame.ExifProfile.GetValue(ExifTag.Make).Value);
+ Assert.Equal("This is Модель камеры", frame.ExifProfile.GetValue(ExifTag.Model).Value);
Assert.Equal(new Number[] { 8u }, frame.StripOffsets, new NumberComparer());
Assert.Equal(1, frame.SamplesPerPixel);
Assert.Equal(32u, frame.RowsPerStrip);
@@ -202,10 +202,10 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Equal(10, frame.VerticalResolution);
Assert.Equal(TiffPlanarConfiguration.Chunky, frame.PlanarConfiguration);
Assert.Equal(PixelResolutionUnit.PixelsPerInch, frame.ResolutionUnit);
- Assert.Equal("IrfanView", frame.Software);
- Assert.Null(frame.DateTime);
- Assert.Equal("This is author1;Author2", frame.Artist);
- Assert.Null(frame.HostComputer);
+ Assert.Equal("IrfanView", frame.ExifProfile.GetValue(ExifTag.Software).Value);
+ Assert.Null(frame.ExifProfile.GetValue(ExifTag.DateTime)?.Value);
+ Assert.Equal("This is author1;Author2", frame.ExifProfile.GetValue(ExifTag.Artist).Value);
+ Assert.Null(frame.ExifProfile.GetValue(ExifTag.HostComputer)?.Value);
Assert.Equal(48, frame.ColorMap.Length);
Assert.Equal(10537, frame.ColorMap[0]);
Assert.Equal(14392, frame.ColorMap[1]);
@@ -215,7 +215,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Null(frame.ExtraSamples);
Assert.Equal(TiffPredictor.None, frame.Predictor);
Assert.Null(frame.SampleFormat);
- Assert.Equal("This is Авторские права", frame.Copyright);
+ Assert.Equal("This is Авторские права", frame.ExifProfile.GetValue(ExifTag.Copyright).Value);
Assert.Equal(4, frame.ExifProfile.GetValue(ExifTag.Rating).Value);
Assert.Equal(75, frame.ExifProfile.GetValue(ExifTag.RatingPercent).Value);
}
@@ -293,33 +293,33 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Equal(frameMeta.HorizontalResolution, frameMetaOut.HorizontalResolution);
Assert.Equal(frameMeta.VerticalResolution, frameMetaOut.VerticalResolution);
- Assert.Equal("ImageSharp", frameMetaOut.Software);
+ Assert.Equal("ImageSharp", frameMetaOut.ExifProfile.GetValue(ExifTag.Software).Value);
if (preserveMetadata)
{
Assert.Equal(tiffMeta.XmpProfile, tiffMetaOut.XmpProfile);
- Assert.Equal("IrfanView", frameMeta.Software);
- Assert.Equal("This is Название", frameMeta.ImageDescription);
- Assert.Equal("This is Изготовитель камеры", frameMeta.Make);
- Assert.Equal("This is Авторские права", frameMeta.Copyright);
+ Assert.Equal("IrfanView", frameMeta.ExifProfile.GetValue(ExifTag.Software).Value);
+ Assert.Equal("This is Название", frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription).Value);
+ Assert.Equal("This is Изготовитель камеры", frameMeta.ExifProfile.GetValue(ExifTag.Make).Value);
+ Assert.Equal("This is Авторские права", frameMeta.ExifProfile.GetValue(ExifTag.Copyright).Value);
- Assert.Equal(frameMeta.ImageDescription, frameMetaOut.ImageDescription);
- Assert.Equal(frameMeta.Make, frameMetaOut.Make);
- Assert.Equal(frameMeta.Copyright, frameMetaOut.Copyright);
+ Assert.Equal(frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription).Value, frameMetaOut.ExifProfile.GetValue(ExifTag.ImageDescription).Value);
+ Assert.Equal(frameMeta.ExifProfile.GetValue(ExifTag.Make).Value, frameMetaOut.ExifProfile.GetValue(ExifTag.Make).Value);
+ Assert.Equal(frameMeta.ExifProfile.GetValue(ExifTag.Copyright).Value, frameMetaOut.ExifProfile.GetValue(ExifTag.Copyright).Value);
}
else
{
Assert.Null(tiffMetaOut.XmpProfile);
- Assert.Null(frameMeta.Software);
- Assert.Null(frameMeta.ImageDescription);
- Assert.Null(frameMeta.Make);
- Assert.Null(frameMeta.Copyright);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.Software)?.Value);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription)?.Value);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.Make)?.Value);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.Copyright)?.Value);
- Assert.Null(frameMetaOut.ImageDescription);
- Assert.Null(frameMetaOut.Make);
- Assert.Null(frameMetaOut.Copyright);
+ Assert.Null(frameMetaOut.ExifProfile.GetValue(ExifTag.ImageDescription)?.Value);
+ Assert.Null(frameMetaOut.ExifProfile.GetValue(ExifTag.Make)?.Value);
+ Assert.Null(frameMetaOut.ExifProfile.GetValue(ExifTag.Copyright)?.Value);
}
}
@@ -350,8 +350,8 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
coreMeta.VerticalResolution = 5400;
var datetime = DateTime.Now.ToString(CultureInfo.InvariantCulture);
- frameMeta.ImageDescription = "test ImageDescription";
- frameMeta.DateTime = datetime;
+ frameMeta.ExifProfile.SetValue(ExifTag.ImageDescription, "test ImageDescription");
+ frameMeta.ExifProfile.SetValue(ExifTag.DateTime, datetime);
// Save to Tiff
var tiffEncoder = new TiffEncoder { Mode = TiffEncodingMode.Default, Compression = TiffEncoderCompression.Deflate };
@@ -385,7 +385,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Equal(frameMeta.HorizontalResolution, frameMetaOut.HorizontalResolution);
Assert.Equal(frameMeta.VerticalResolution, frameMetaOut.VerticalResolution);
- Assert.Equal("ImageSharp", frameMetaOut.Software);
+ Assert.Equal("ImageSharp", frameMetaOut.ExifProfile.GetValue(ExifTag.Software)?.Value);
if (preserveMetadata)
{
@@ -397,11 +397,11 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Equal(coreMeta.IptcProfile.Data, coreMetaOut.IptcProfile.Data);
Assert.Equal(coreMeta.IccProfile.ToByteArray(), coreMetaOut.IccProfile.ToByteArray());
- Assert.Equal("test ImageDescription", frameMeta.ImageDescription);
- Assert.Equal(datetime, frameMeta.DateTime);
+ Assert.Equal("test ImageDescription", frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription).Value);
+ Assert.Equal(datetime, frameMeta.ExifProfile.GetValue(ExifTag.DateTime)?.Value);
- Assert.Equal(frameMeta.ImageDescription, frameMetaOut.ImageDescription);
- Assert.Equal(frameMeta.DateTime, frameMetaOut.DateTime);
+ Assert.Equal(frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription).Value, frameMetaOut.ExifProfile.GetValue(ExifTag.ImageDescription).Value);
+ Assert.Equal(frameMeta.ExifProfile.GetValue(ExifTag.DateTime).Value, frameMetaOut.ExifProfile.GetValue(ExifTag.DateTime).Value);
}
else
{
@@ -409,11 +409,11 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tiff
Assert.Null(coreMetaOut.IptcProfile);
Assert.Null(coreMetaOut.IccProfile);
- Assert.Null(frameMeta.ImageDescription);
- Assert.Null(frameMeta.DateTime);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.ImageDescription)?.Value);
+ Assert.Null(frameMeta.ExifProfile.GetValue(ExifTag.DateTime)?.Value);
- Assert.Null(frameMetaOut.ImageDescription);
- Assert.Null(frameMetaOut.DateTime);
+ Assert.Null(frameMetaOut.ExifProfile.GetValue(ExifTag.ImageDescription)?.Value);
+ Assert.Null(frameMetaOut.ExifProfile.GetValue(ExifTag.DateTime)?.Value);
}
}