From 33192d396bf343c28faf26c8dcf7bd96aee0b3f0 Mon Sep 17 00:00:00 2001 From: Brian Popow Date: Wed, 5 May 2021 19:07:07 +0200 Subject: [PATCH] Switch default quantizer for the bitmap encoder to Wu-quantizer --- src/ImageSharp/Formats/Bmp/BmpEncoder.cs | 2 +- src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs | 2 +- src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs | 1 - .../Formats/Bmp/BmpEncoderTests.cs | 14 +++----------- 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/src/ImageSharp/Formats/Bmp/BmpEncoder.cs b/src/ImageSharp/Formats/Bmp/BmpEncoder.cs index 2f5c4b7cf..f256ed9f8 100644 --- a/src/ImageSharp/Formats/Bmp/BmpEncoder.cs +++ b/src/ImageSharp/Formats/Bmp/BmpEncoder.cs @@ -30,7 +30,7 @@ namespace SixLabors.ImageSharp.Formats.Bmp /// /// Gets or sets the quantizer for reducing the color count for 8-Bit images. - /// Defaults to OctreeQuantizer. + /// Defaults to Wu Quantizer. /// public IQuantizer Quantizer { get; set; } diff --git a/src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs b/src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs index b407ad221..5cf54388d 100644 --- a/src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs +++ b/src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs @@ -98,7 +98,7 @@ namespace SixLabors.ImageSharp.Formats.Bmp this.memoryAllocator = memoryAllocator; this.bitsPerPixel = options.BitsPerPixel; this.writeV4Header = options.SupportTransparency; - this.quantizer = options.Quantizer ?? KnownQuantizers.Octree; + this.quantizer = options.Quantizer ?? KnownQuantizers.Wu; } /// diff --git a/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs b/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs index ca1fbd0de..30aa70452 100644 --- a/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs +++ b/src/ImageSharp/Formats/Bmp/IBmpEncoderOptions.cs @@ -25,7 +25,6 @@ namespace SixLabors.ImageSharp.Formats.Bmp /// /// Gets the quantizer for reducing the color count for 8-Bit, 4-Bit, and 1-Bit images. - /// Defaults to the Octree Quantizer. /// IQuantizer Quantizer { get; } } diff --git a/tests/ImageSharp.Tests/Formats/Bmp/BmpEncoderTests.cs b/tests/ImageSharp.Tests/Formats/Bmp/BmpEncoderTests.cs index 31e66896d..4eb3b900e 100644 --- a/tests/ImageSharp.Tests/Formats/Bmp/BmpEncoderTests.cs +++ b/tests/ImageSharp.Tests/Formats/Bmp/BmpEncoderTests.cs @@ -212,11 +212,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Bmp // The Magick Reference Decoder can not decode 1-Bit bitmaps, so only execute this on windows. if (TestEnvironment.IsWindows) { - TestBmpEncoderCore( - provider, - bitsPerPixel, - supportTransparency: false, - quantizer: KnownQuantizers.Wu); // using the wu quantizer, because the octree seems to have problems with just two colors. + TestBmpEncoderCore(provider, bitsPerPixel, supportTransparency: false); } } @@ -230,11 +226,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Bmp // The Magick Reference Decoder can not decode 1-Bit bitmaps, so only execute this on windows. if (TestEnvironment.IsWindows) { - TestBmpEncoderCore( - provider, - bitsPerPixel, - supportTransparency: true, - quantizer: KnownQuantizers.Wu); // using the wu quantizer, because the octree seems to have problems with just two colors. + TestBmpEncoderCore(provider, bitsPerPixel, supportTransparency: true); } } @@ -351,7 +343,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Bmp { BitsPerPixel = bitsPerPixel, SupportTransparency = supportTransparency, - Quantizer = quantizer ?? KnownQuantizers.Octree + Quantizer = quantizer ?? KnownQuantizers.Wu }; // Does DebugSave & load reference CompareToReferenceInput():