Skip to content

Instantly share code, notes, and snippets.

@antonfirsov
Last active January 23, 2019 19:47
Show Gist options
  • Save antonfirsov/0f1050796e4e3b78b8e84d8bff13dd65 to your computer and use it in GitHub Desktop.
Save antonfirsov/0f1050796e4e3b78b8e84d8bff13dd65 to your computer and use it in GitHub Desktop.

JPEG & Exif

  • [2018-09-07] #698 - Allow several invalid data types when reading the exif resolution.
  • [2018-09-07] #699 - Fix EXIF overflow and Jpeg decoding
  • [2018-09-11] #686 - Ext.DrawImage generalization to support multiple formats. (Experimental)
  • [2018-10-04] #722 - Fix #721 ||| incorrect App0 markers
  • [2018-10-05] #724 - Decode components in correct order + cleanup + optimizations. ||| interleaved progressive jpegs
  • [2018-11-05] #768 - Various Jpeg optimizations
  • [2018-12-30] #784 - Jpeg 12 bit support
  • [2019-01-06] #801 - #797 throw ImageFormatException when no StartOfFrame marker is found
  • [2019-01-09] #804 - Use bounds checks in Huffman ctr. Fix #798

PNG

  • [2018-09-18] #705 - Png and Wu Quantizer fixes
  • [2018-09-21] #708 - Fix issue on mono <= 5.14 when reading multiple png data chunks.
  • [2018-09-28] #712 - Add 1, 2, and 4 bit Png Encoding
  • [2018-10-18] #740 - Use scaled luminance trns comparison.
  • [2018-11-23] #764 - [WIP] Preserving isTrans data

BMP

  • [2018-08-14] #676 - Fix 1 bit bmp decoding and add extra test images.
  • [2018-12-20] #791 - WIP: Adds support for Decoding Bitmaps with 16 bytes headers
  • [2018-12-20] #792 - WIP: Fix for Windows 2.0 or OS/2 1.x bitmaps only use 3 bytes per color palette entry
  • [2019-01-18] #796 - Decoding Bitmaps with BITFIELDS masks
  • [2019-01-20] #812 - Support for decoding RLE4 encoded bitmaps
  • [2019-01-23] #813 - Adds support for OS/2 version 2 bitmaps

GIF

  • [2018-11-06] #770 - Fix infinite loop when a GIF prematurely terminates

Resize

  • [2018-10-08] #731 - Clean-up, fix, and optimize ResizeProcessor
  • [2018-10-06] #719 - Keep one pixel if aspect ratio respecting resize would set a dimension to 0.
  • [2018-11-29] #781 - Memory-optimized ResizeKernelMap

Color Spaces

  • [2018-10-10] #664 - WIP Colorspace Transforms
  • [2018-10-12] #734 - Refactor Companding
  • [2018-10-16] #736 - Write float values using the invariant culture.

Pixel Types

  • [2018-10-08] #728 - Add ToString implementations to Bgr24 and Bgra32
  • [2018-10-23] #729 - #718 #730: Add Gray8 and Gray16 Pixel Formats and clean up IPixel
  • [2018-10-23] #744 - Refactor & simplify conversion API's
  • [2018-10-27] #754 - Imrpoved Gray8 accuracy

Drawing and text

  • [2018-10-30] #756 - constrain destination span and scanline to same length
  • [2018-10-30] #755 - Prevent text wandering from baseline
  • [2018-11-23] #765 - Optimize filling a region with a solid brush when antialias is off

Transformations

  • [2018-11-28] #775 - Improve the Transform API
  • [2018-12-11] #788 - Fix Projective Transforms

Compatibility

  • [2018-10-16] #737 - Drop netstandard1.1
  • [2018-08-23] #681 - Drop .NET Core 2.0 from continuous integration test coverage
  • [2018-10-24] #746 - Cross target NET472 and enable extended intrinsics behind symbol
  • [2018-11-12] #767 - ImageSharp-762: Added methods to pre-seed AoT compiler on iOS ||| Xamarin !
  • [2018-12-17] #785 - Add more seeding to the AoT compiler for iOS

other API (check again)

  • [2018-08-19] #641 - WIP Generate all Pixel Blender/Composer possible combinations to solve #535
  • [2018-08-23] #679 - Split PixelBlendMode into PixelColorBlendingMode and PixelAlphaCompositionMode
  • [2018-09-13] #693 - Add derived format info types and allow persistance of palette lengths ||| Format metadata!
  • [2018-09-13] #701 - Make formats public + minor cleanup.
  • [2018-09-22] #707 - Ensure frame metadata is a deep copy. ||| IDeepClonable!
  • [2018-10-06] #726 - Throw when crop rectangle exceeds source bounds.
  • [2018-11-05] #741 - Add generic palette quantizer, refactor + werner palette

other optimizatio

  • [2018-08-21] #680 - Optimize Equals & GetHashCode methods within PixelFormats
  • [2018-08-08] #671 - Use span directly for DetectFormat
  • [2018-09-25] #710 - Optimized parallel pixel processing
  • [2018-10-21] #742 - Clean up and optimize byte<->float and Rgba32 <-> Vector4 conversion
  • [2018-10-27] #751 - Introduce optimized conversion methods for RGBA-like types
  • [2018-11-16] #771 - Avoid doing the same thing multiple times

other bugfix

  • [2018-08-26] #684 - Don't allow duplicate formats in configuration.
  • [2018-09-28] #715 - Use clean buffer when detecting format
  • [2018-10-27] #753 - Added missing length check that caused an ArgumentNullException (#750)
  • [2018-12-16] #789 - Use correct Kernel dimensions and optimize. Fix #786 ||| Fix a bug in Gaussian Blur
  • [2019-01-17] #806 - Fix Color Filters ||| ColorMatrix, fix Filter

other internal refactor

  • [2018-08-21] #678 - Improve CQ7
  • [2018-08-24] #682 - Add image blending tests to match the SVG spec examples
  • [2018-09-06] #689 - Use in where appropriate.
  • [2018-09-30] #717 - Improve PNG CQ
  • [2018-10-02] #720 - Improve PNG CQ2
  • [2018-10-06] #727 - Uniformize T4 generator methods for PixelOperations
  • [2018-10-24] #747 - Improve CQ8
  • [2018-10-29] #760 - Replaced tabs with spaces.
  • [2018-11-05] #769 - fix typos in documentation comments all over the library ||| FIX DOX!
  • [2018-11-06] #773 - simplify BoxBlurProcessor kernel initialization
  • [2018-11-10] #772 - Fix naming of variable and class
  • [2018-12-12] #783 - Improve CQ10

other non-product

  • [2018-09-01] #691 - Added new issue templates.
  • [2018-09-18] #706 - Add usings to readme
  • [2018-09-22] #709 - Skip tests in ReferenceDecoderBenchmarks
  • [2018-10-29] #761 - Upgraded Magick.NET to the latest release.
  • [2018-10-30] #759 - Removed duplicate item from the list.
  • [2018-11-28] #780 - Add testing/debugging related info to CONTRIBUTING.md
  • [2018-12-10] #782 - Revised & extended test coverage for Resize
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment