Browse Source

Update TIFF codec to new IImageDecoder signature

pull/119/head
Andrew Wilkinson 9 years ago
parent
commit
6979a7248b
  1. 7
      src/ImageSharp/Formats/Tiff/TiffDecoder.cs
  2. 31
      src/ImageSharp/Formats/Tiff/TiffDecoderCore.cs
  3. 53
      tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderHeaderTests.cs
  4. 2
      tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderIfdEntryTests.cs
  5. 8
      tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderIfdTests.cs
  6. 38
      tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderImageTests.cs
  7. 1
      tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffIfd/TiffIfdTests.cs

7
src/ImageSharp/Formats/Tiff/TiffDecoder.cs

@ -13,15 +13,14 @@ namespace ImageSharp.Formats
public class TiffDecoder : IImageDecoder public class TiffDecoder : IImageDecoder
{ {
/// <inheritdoc/> /// <inheritdoc/>
public void Decode<TColor>(Image<TColor> image, Stream stream, IDecoderOptions options) public Image<TColor> Decode<TColor>(Configuration configuration, Stream stream, IDecoderOptions options)
where TColor : struct, IPixel<TColor> where TColor : struct, IPixel<TColor>
{ {
Guard.NotNull(image, "image");
Guard.NotNull(stream, "stream"); Guard.NotNull(stream, "stream");
using (TiffDecoderCore decoder = new TiffDecoderCore(options)) using (TiffDecoderCore decoder = new TiffDecoderCore(options, configuration))
{ {
decoder.Decode(image, stream, false); return decoder.Decode<TColor>(stream);
} }
} }
} }

31
src/ImageSharp/Formats/Tiff/TiffDecoderCore.cs

@ -21,12 +21,19 @@ namespace ImageSharp.Formats
/// </summary> /// </summary>
private readonly IDecoderOptions options; private readonly IDecoderOptions options;
/// <summary>
/// The global configuration
/// </summary>
private readonly Configuration configuration;
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="TiffDecoderCore" /> class. /// Initializes a new instance of the <see cref="TiffDecoderCore" /> class.
/// </summary> /// </summary>
/// <param name="options">The decoder options.</param> /// <param name="options">The decoder options.</param>
public TiffDecoderCore(IDecoderOptions options) /// <param name="configuration">The configuration.</param>
public TiffDecoderCore(IDecoderOptions options, Configuration configuration)
{ {
this.configuration = configuration ?? Configuration.Default;
this.options = options ?? new DecoderOptions(); this.options = options ?? new DecoderOptions();
} }
@ -36,8 +43,9 @@ namespace ImageSharp.Formats
/// <param name="stream">The input stream.</param> /// <param name="stream">The input stream.</param>
/// <param name="isLittleEndian">A flag indicating if the file is encoded in little-endian or big-endian format.</param> /// <param name="isLittleEndian">A flag indicating if the file is encoded in little-endian or big-endian format.</param>
/// <param name="options">The decoder options.</param> /// <param name="options">The decoder options.</param>
public TiffDecoderCore(Stream stream, bool isLittleEndian, IDecoderOptions options) /// <param name="configuration">The configuration.</param>
: this(options) public TiffDecoderCore(Stream stream, bool isLittleEndian, IDecoderOptions options, Configuration configuration)
: this(options, configuration)
{ {
this.InputStream = stream; this.InputStream = stream;
this.IsLittleEndian = isLittleEndian; this.IsLittleEndian = isLittleEndian;
@ -75,17 +83,18 @@ namespace ImageSharp.Formats
/// the data to image. /// the data to image.
/// </summary> /// </summary>
/// <typeparam name="TColor">The pixel format.</typeparam> /// <typeparam name="TColor">The pixel format.</typeparam>
/// <param name="image">The image, where the data should be set to.</param>
/// <param name="stream">The stream, where the image should be.</param> /// <param name="stream">The stream, where the image should be.</param>
/// <param name="metadataOnly">Whether to decode metadata only.</param> /// <returns>The decoded image.</returns>
public void Decode<TColor>(Image<TColor> image, Stream stream, bool metadataOnly) public Image<TColor> Decode<TColor>(Stream stream)
where TColor : struct, IPixel<TColor> where TColor : struct, IPixel<TColor>
{ {
this.InputStream = stream; this.InputStream = stream;
uint firstIfdOffset = this.ReadHeader(); uint firstIfdOffset = this.ReadHeader();
TiffIfd firstIfd = this.ReadIfd(firstIfdOffset); TiffIfd firstIfd = this.ReadIfd(firstIfdOffset);
this.DecodeImage(firstIfd, image); Image<TColor> image = this.DecodeImage<TColor>(firstIfd);
return image;
} }
/// <summary> /// <summary>
@ -168,8 +177,8 @@ namespace ImageSharp.Formats
/// </summary> /// </summary>
/// <typeparam name="TColor">The pixel format.</typeparam> /// <typeparam name="TColor">The pixel format.</typeparam>
/// <param name="ifd">The IFD to read the image from.</param> /// <param name="ifd">The IFD to read the image from.</param>
/// <param name="image">The image, where the data should be set to.</param> /// <returns>The decoded image.</returns>
public void DecodeImage<TColor>(TiffIfd ifd, Image<TColor> image) public Image<TColor> DecodeImage<TColor>(TiffIfd ifd)
where TColor : struct, IPixel<TColor> where TColor : struct, IPixel<TColor>
{ {
if (!ifd.TryGetIfdEntry(TiffTags.ImageLength, out TiffIfdEntry imageLengthEntry) if (!ifd.TryGetIfdEntry(TiffTags.ImageLength, out TiffIfdEntry imageLengthEntry)
@ -181,7 +190,7 @@ namespace ImageSharp.Formats
int width = (int)this.ReadUnsignedInteger(ref imageWidthEntry); int width = (int)this.ReadUnsignedInteger(ref imageWidthEntry);
int height = (int)this.ReadUnsignedInteger(ref imageLengthEntry); int height = (int)this.ReadUnsignedInteger(ref imageLengthEntry);
image.InitPixels(width, height); Image<TColor> image = Image.Create<TColor>(width, height, this.configuration);
TiffResolutionUnit resolutionUnit = TiffResolutionUnit.Inch; TiffResolutionUnit resolutionUnit = TiffResolutionUnit.Inch;
if (ifd.TryGetIfdEntry(TiffTags.ResolutionUnit, out TiffIfdEntry resolutionUnitEntry)) if (ifd.TryGetIfdEntry(TiffTags.ResolutionUnit, out TiffIfdEntry resolutionUnitEntry))
@ -233,6 +242,8 @@ namespace ImageSharp.Formats
} }
} }
} }
return image;
} }
/// <summary> /// <summary>

53
tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderHeaderTests.cs

@ -20,12 +20,12 @@ namespace ImageSharp.Tests
public void ReadHeader_ReadsEndianness(bool isLittleEndian) public void ReadHeader_ReadsEndianness(bool isLittleEndian)
{ {
Stream stream = new TiffGenHeader() Stream stream = new TiffGenHeader()
{ {
FirstIfd = new TiffGenIfd() FirstIfd = new TiffGenIfd()
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, false, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, false, null, null);
decoder.ReadHeader(); decoder.ReadHeader();
@ -37,12 +37,12 @@ namespace ImageSharp.Tests
public void ReadHeader_ReadsFirstIfdOffset(bool isLittleEndian) public void ReadHeader_ReadsFirstIfdOffset(bool isLittleEndian)
{ {
Stream stream = new TiffGenHeader() Stream stream = new TiffGenHeader()
{ {
FirstIfd = new TiffGenIfd() FirstIfd = new TiffGenIfd()
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, false, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, false, null, null);
uint firstIfdOffset = decoder.ReadHeader(); uint firstIfdOffset = decoder.ReadHeader();
@ -60,16 +60,16 @@ namespace ImageSharp.Tests
public void Decode_ThrowsException_WithInvalidByteOrderMarkers(ushort byteOrderMarker) public void Decode_ThrowsException_WithInvalidByteOrderMarkers(ushort byteOrderMarker)
{ {
Stream stream = new TiffGenHeader() Stream stream = new TiffGenHeader()
{ {
FirstIfd = new TiffGenIfd(), FirstIfd = new TiffGenIfd(),
ByteOrderMarker = byteOrderMarker ByteOrderMarker = byteOrderMarker
} }
.ToStream(true); .ToStream(true);
TiffDecoder decoder = new TiffDecoder(); TiffDecoder decoder = new TiffDecoder();
ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); }); ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); });
Assert.Equal("Invalid TIFF file header.", e.Message); Assert.Equal("Invalid TIFF file header.", e.Message);
} }
@ -78,16 +78,16 @@ namespace ImageSharp.Tests
public void Decode_ThrowsException_WithIncorrectMagicNumber(bool isLittleEndian) public void Decode_ThrowsException_WithIncorrectMagicNumber(bool isLittleEndian)
{ {
Stream stream = new TiffGenHeader() Stream stream = new TiffGenHeader()
{ {
FirstIfd = new TiffGenIfd(), FirstIfd = new TiffGenIfd(),
MagicNumber = 32 MagicNumber = 32
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoder decoder = new TiffDecoder(); TiffDecoder decoder = new TiffDecoder();
ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); }); ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); });
Assert.Equal("Invalid TIFF file header.", e.Message); Assert.Equal("Invalid TIFF file header.", e.Message);
} }
@ -96,23 +96,22 @@ namespace ImageSharp.Tests
public void Decode_ThrowsException_WithNoIfdZero(bool isLittleEndian) public void Decode_ThrowsException_WithNoIfdZero(bool isLittleEndian)
{ {
Stream stream = new TiffGenHeader() Stream stream = new TiffGenHeader()
{ {
FirstIfd = null FirstIfd = null
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoder decoder = new TiffDecoder(); TiffDecoder decoder = new TiffDecoder();
ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); }); ImageFormatException e = Assert.Throws<ImageFormatException>(() => { TestDecode(decoder, stream); });
Assert.Equal("Invalid TIFF file header.", e.Message); Assert.Equal("Invalid TIFF file header.", e.Message);
} }
private void TestDecode(TiffDecoder decoder, Stream stream) private void TestDecode(TiffDecoder decoder, Stream stream)
{ {
Configuration.Default.AddImageFormat(new TiffFormat()); Configuration.Default.AddImageFormat(new TiffFormat());
Image image = new Image(1,1); Image<Color> image = decoder.Decode<Color>(Configuration.Default, stream, null);
decoder.Decode<Color>(image, stream, null);
} }
} }
} }

2
tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderIfdEntryTests.cs

@ -836,7 +836,7 @@ namespace ImageSharp.Tests
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfdEntry ifdEntry = decoder.ReadIfd(0).Entries[0]; TiffIfdEntry ifdEntry = decoder.ReadIfd(0).Entries[0];
return (decoder, ifdEntry); return (decoder, ifdEntry);

8
tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderIfdTests.cs

@ -30,7 +30,7 @@ namespace ImageSharp.Tests
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Assert.Equal(18u, ifd.NextIfdOffset); Assert.Equal(18u, ifd.NextIfdOffset);
@ -49,7 +49,7 @@ namespace ImageSharp.Tests
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Assert.Equal(0u, ifd.NextIfdOffset); Assert.Equal(0u, ifd.NextIfdOffset);
@ -73,7 +73,7 @@ namespace ImageSharp.Tests
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Assert.NotNull(ifd.Entries); Assert.NotNull(ifd.Entries);
@ -96,7 +96,7 @@ namespace ImageSharp.Tests
} }
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
TiffIfdEntry entry = ifd.Entries[1]; TiffIfdEntry entry = ifd.Entries[1];

38
tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffDecoderImageTests.cs

@ -29,11 +29,9 @@ namespace ImageSharp.Tests
Stream stream = CreateTiffGenIfd() Stream stream = CreateTiffGenIfd()
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Image<Color> image = new Image<Color>(1, 1); Image<Color> image = decoder.DecodeImage<Color>(ifd);
decoder.DecodeImage(ifd, image);
Assert.Equal(ImageWidth, image.Width); Assert.Equal(ImageWidth, image.Width);
Assert.Equal(ImageHeight, image.Height); Assert.Equal(ImageHeight, image.Height);
@ -82,11 +80,9 @@ namespace ImageSharp.Tests
Stream stream = ifdGen.ToStream(isLittleEndian); Stream stream = ifdGen.ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Image<Color> image = new Image<Color>(1, 1); Image<Color> image = decoder.DecodeImage<Color>(ifd);
decoder.DecodeImage(ifd, image);
Assert.Equal(expectedHorizonalResolution, image.MetaData.HorizontalResolution, 10); Assert.Equal(expectedHorizonalResolution, image.MetaData.HorizontalResolution, 10);
Assert.Equal(expectedVerticalResolution, image.MetaData.VerticalResolution, 10); Assert.Equal(expectedVerticalResolution, image.MetaData.VerticalResolution, 10);
@ -100,11 +96,10 @@ namespace ImageSharp.Tests
.WithoutEntry(TiffTags.ImageWidth) .WithoutEntry(TiffTags.ImageWidth)
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Image<Color> image = new Image<Color>(1, 1);
var e = Assert.Throws<ImageFormatException>(() => decoder.DecodeImage(ifd, image)); var e = Assert.Throws<ImageFormatException>(() => decoder.DecodeImage<Color>(ifd));
Assert.Equal("The TIFF IFD does not specify the image dimensions.", e.Message); Assert.Equal("The TIFF IFD does not specify the image dimensions.", e.Message);
} }
@ -117,11 +112,10 @@ namespace ImageSharp.Tests
.WithoutEntry(TiffTags.ImageLength) .WithoutEntry(TiffTags.ImageLength)
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
Image<Color> image = new Image<Color>(1, 1);
var e = Assert.Throws<ImageFormatException>(() => decoder.DecodeImage(ifd, image)); var e = Assert.Throws<ImageFormatException>(() => decoder.DecodeImage<Color>(ifd));
Assert.Equal("The TIFF IFD does not specify the image dimensions.", e.Message); Assert.Equal("The TIFF IFD does not specify the image dimensions.", e.Message);
} }
@ -135,7 +129,7 @@ namespace ImageSharp.Tests
.WithEntry(TiffGenEntry.Integer(TiffTags.Compression, TiffType.Short, compression)) .WithEntry(TiffGenEntry.Integer(TiffTags.Compression, TiffType.Short, compression))
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
decoder.ReadImageFormat(ifd); decoder.ReadImageFormat(ifd);
@ -173,7 +167,7 @@ namespace ImageSharp.Tests
.WithEntry(TiffGenEntry.Integer(TiffTags.Compression, TiffType.Short, compression)) .WithEntry(TiffGenEntry.Integer(TiffTags.Compression, TiffType.Short, compression))
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd)); var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd));
@ -191,7 +185,7 @@ namespace ImageSharp.Tests
.WithEntry(TiffGenEntry.Integer(TiffTags.BitsPerSample, TiffType.Short, bitsPerSample)) .WithEntry(TiffGenEntry.Integer(TiffTags.BitsPerSample, TiffType.Short, bitsPerSample))
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
decoder.ReadImageFormat(ifd); decoder.ReadImageFormat(ifd);
@ -209,7 +203,7 @@ namespace ImageSharp.Tests
// .WithoutEntry(TiffTags.PhotometricInterpretation) // .WithoutEntry(TiffTags.PhotometricInterpretation)
// .ToStream(isLittleEndian); // .ToStream(isLittleEndian);
// TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); // TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
// TiffIfd ifd = decoder.ReadIfd(0); // TiffIfd ifd = decoder.ReadIfd(0);
// decoder.ReadImageFormat(ifd); // decoder.ReadImageFormat(ifd);
@ -224,7 +218,7 @@ namespace ImageSharp.Tests
.WithoutEntry(TiffTags.PhotometricInterpretation) .WithoutEntry(TiffTags.PhotometricInterpretation)
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
var e = Assert.Throws<ImageFormatException>(() => decoder.ReadImageFormat(ifd)); var e = Assert.Throws<ImageFormatException>(() => decoder.ReadImageFormat(ifd));
@ -263,7 +257,7 @@ namespace ImageSharp.Tests
.WithEntry(TiffGenEntry.Integer(TiffTags.PhotometricInterpretation, TiffType.Short, photometricInterpretation)) .WithEntry(TiffGenEntry.Integer(TiffTags.PhotometricInterpretation, TiffType.Short, photometricInterpretation))
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd)); var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd));
@ -281,7 +275,7 @@ namespace ImageSharp.Tests
.WithEntry(TiffGenEntry.Integer(TiffTags.BitsPerSample, TiffType.Short, bitsPerSample)) .WithEntry(TiffGenEntry.Integer(TiffTags.BitsPerSample, TiffType.Short, bitsPerSample))
.ToStream(isLittleEndian); .ToStream(isLittleEndian);
TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null); TiffDecoderCore decoder = new TiffDecoderCore(stream, isLittleEndian, null, null);
TiffIfd ifd = decoder.ReadIfd(0); TiffIfd ifd = decoder.ReadIfd(0);
var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd)); var e = Assert.Throws<NotSupportedException>(() => decoder.ReadImageFormat(ifd));
@ -293,7 +287,7 @@ namespace ImageSharp.Tests
[InlineData(TiffColorType.WhiteIsZero8, 100, 80, 100 * 80)] [InlineData(TiffColorType.WhiteIsZero8, 100, 80, 100 * 80)]
public void CalculateImageBufferSize_ReturnsCorrectSize(ushort colorType, int width, int height, int expectedResult) public void CalculateImageBufferSize_ReturnsCorrectSize(ushort colorType, int width, int height, int expectedResult)
{ {
TiffDecoderCore decoder = new TiffDecoderCore(null); TiffDecoderCore decoder = new TiffDecoderCore(null, null);
int bufferSize = decoder.CalculateImageBufferSize(width, height); int bufferSize = decoder.CalculateImageBufferSize(width, height);

1
tests/ImageSharp.Formats.Tiff.Tests/Formats/Tiff/TiffIfd/TiffIfdTests.cs

@ -5,7 +5,6 @@
namespace ImageSharp.Tests namespace ImageSharp.Tests
{ {
using System.IO;
using Xunit; using Xunit;
using ImageSharp.Formats.Tiff; using ImageSharp.Formats.Tiff;

Loading…
Cancel
Save