Releases: SixLabors/ImageSharp
Releases · SixLabors/ImageSharp
1.0.0 beta5
Breaking changes
- All processing extension methods have been moved to the
SixLabors.ImageSharp.Processing
namespace to improve API discoverability for vanilla VS and VS Code users. (#645) Sub namespaces likeSixLabors.ImageSharp.Processing.Transforms
do no longer exist! You have to remove these using statements from your code:
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.PixelFormats;
using SixLabors.ImageSharp.Processing; // The only namespace required for processing extensions!
u̶s̶i̶n̶g̶ ̶S̶i̶x̶L̶a̶b̶o̶r̶s̶.̶I̶m̶a̶g̶e̶S̶h̶a̶r̶p̶.̶P̶r̶o̶c̶e̶s̶s̶i̶n̶g̶.̶T̶r̶a̶n̶s̶f̶o̶r̶m̶s̶;̶ // COMPILATION ERROR!
image.SavePixelData()
APIs have been removed in favour ofimage.GetPixelSpan()
(#628)Configuration.ParallelOptions
has been replaced withConfiguration.MaxDegreeOfParallelism
(#667)
Improvements since beta 4:
- Fixed all remaining issues with .NET Core 2.1
- Jpeg improvements:
- Introduce
PixelResolutionUnit
inImageMetaData
, fix #490 (#649) - PNG improvements
- Optimized font rendering by caching glyphs (#614)
- Improved Gif and Quantization performance when using diffusion by
~600%
(#637) - Cross target .NET Core 2.1 (#604)
- Histogram Equalization (#644)
- Deeper
System.Memory
API integration:- Span overloads for
Image.Load()
andImage.DetectFormat()
(#618) image.GetPixelSpan()
andimage.GetPixelRowSpan()
extension methods for fast pixel data manipulation (#607)Image.WrapMemory(...)
for native interop use-cases (#660)- The
MemoryAllocator
API is now public and shared across all SixLabors projects (#665)
- Span overloads for
NuGet
https://www.nuget.org/packages/SixLabors.ImageSharp/1.0.0-beta0005
https://www.nuget.org/packages/SixLabors.ImageSharp.Drawing/1.0.0-beta0005
1.0.0 beta4
Improvements since beta 3
- Full support for .NET Core 2.1
- Fixed a bug related to drawing large and complex shapes (eg. pages of text)
- Gradient brushes
- Projective non-affine transforms (tilt, perspective)
- Improved the robustness of our Jpeg decoder:
- A large part of the implementation has been replaced, allowing to parse a wider range of incorrectly encoded images
- Better ICC reader
- Basic
System.Memory
API integration: Image.LoadPixelData() and SavePixelData() are now able to consume spans - Improved
.Fill(color)
performance and added a constructor initializing images with a default fill color
Blog post
v1.0.0-beta3
Improvements since beta 2
- Breaking change: Refactored the namespaces to logical groups based on functionality.
- Introduced a full memory management API that allows fine grained control of how ImageSharp manages large buffers.
- For the default pooling memory management implementation we managed to halve the memory footprint of the library without significant loss in speed.
- Made codecs easier to use. The performance of the Jpeg decoder is doubled since the first beta!
- Introduced a new metadata-only decoding API with the help of the community.
- Introduced new affine transform methods that allow the composition of affine transforms.
- Refactored all filters (Hue, Brightness, Saturation etc) to match the behaviour described in the W3C specification.
- Introduced static instances of reusable algorithms for use as method parameters.
- Fixed the resampling processes to correctly blend semi-transparent output.
- Many other performance improvements and bug fixes.
Blog post
1.0.0 beta2
Beta Release
- Added new netstandard 2.0 target to take advantage of performance improvements
- Increased the speed of the Jpeg decoder by
100%-200%
for most images - Normalized and improved animated Gif output
- Revised API for
IImageFrameCollection<T>
(image.Frames
). From now, it is responsible for managing the lifecycle of image frames. AddedCloneFrame(idx)
andExportFrame(idx)
methods to copy/move individual frames into new images. - Various Png performance improvements and fixes
- Expanded range of decodable Bmp types
ref
returning extension methods for low-level/interop scenarios. (Only for advanced users, familiar with pointer arithmetics!)- Many other bug fixes
You can download the packages from nuget
1.0.0 beta1
Merge pull request #299 from SixLabors/beta-1 Beta 1