Releases: 0xC0000054/libheif-sharp
Releases · 0xC0000054/libheif-sharp
LibHeifSharp v3.2.0
Added
- Support for reading and writing the inline and reference mask region items.
- Requires LibHeif 1.17.0 or later.
ReadOnlyMemory<byte>andReadOnlySpan<byte>overloads for various APIs.- This adds a
System.Memorydependency to the .NET Standard 2.0 target.
- This adds a
- An
AsSpanmethod to theHeifIccColorProfileclass. - A .NET Standard 2.1 target.
LibHeifSharp v3.1.0
Added
- A
ColorConversionOptionsproperty to theHeifDecodingOptionsclass.- Requires LibHeif 1.16.0 or later, it will be ignored on older versions.
- A
ColorConversionOptionsproperty to theHeifEncodingOptionsclass.- Requires LibHeif 1.16.0 or later, it will be ignored on older versions.
- Support for the LibHeif region APIs.
- A
GetRegionItemmethod to theHeifContextclass. AddRegionandGetRegionItemIdsmethods to theHeifImageHandleclass.- These methods require LibHeif 1.16.0 or later.
- A
- Support for the LibHeif item property APIs.
AddUserDescriptionProperty,GetTransformationPropertiesandGetUserDescriptionPropertiesmethods to theHeifContextclass.- These methods require LibHeif 1.16.0 or later.
Fixed
- The
PixelAspectRatioproperty will ignore a default initialized structure.- ISO/IEC 14496-12:2015 requires the horizontal and vertical spacing to be positive numbers.
LibHeifSharp v3.0.0
Breaking
- All obsolete members will produce a compiler error.
- Removed the .NET Standard 1.3 and .NET Framework 4.6 targets.
Added
- A
GetDecoderDescriptorsmethod to theLibHeifInfoclass.- Requires LibHeif version 1.15.0 or later, it returns an empty collection on older versions.
- A
DecoderIdproperty to theHeifDecodingOptionsclass.- This instructs LibHeif to use a specific decoder when reading the image.
- Requires LibHeif version 1.15.0 or later, it is ignored on older versions.
- A
HaveVersionmethod to theLibHeifInfoclass.- This simplifies checking that LibHeif is at least the specified minimum version.
IccColorProfileandNclxColorProfileproperties to theHeifImageHandleclass.- A
GetMetadataBlockInfomethod to theHeifImageHandleclass. - A
ContentLightLevelproperty to theHeifImageclass.- The content light level data is used for HDR rendering.
- Requires LibHeif version 1.15.0 or later.
- A
MasteringDisplayColourVolumeproperty to theHeifImageclass.- The mastering display color volume data is used for HDR rendering.
- Requires LibHeif version 1.15.0 or later.
- A
PixelAspectRatioproperty to theHeifImageclass.- Requires LibHeif version 1.15.0 or later.
- An
ImageOrientationproperty to theHeifEncodingOptionsclass.- This property allows the encoder to convert the EXIF Orientation values into the equivalent HEIF image transformations.
- Requires LibHeif version 1.14.0 or later, it is ignored on older versions.
Changed
GetDepthRepresentationInfothrows an exception when the nonlinear representation model is larger than 2GB.- Previous versions of this library would silently ignore a nonlinear representation model that is larger than 2GB.
LibHeifSharp v2.4.0
Added
- A
SetMaximumDecodingThreadsmethod to theHeifContextclass.
Fixed
- The P/Invoke name used by the
SetMaximumImageSizeLimitmethod. - Various issues with the documentation.
LibHeifSharp v2.3.1
Fixed
- A potential correctness issue in the I/O code.
LibHeifSharp v2.3.0
Added
- A
Strictproperty to theHeifDecodingOptionsclass.- When enabled, it instructs the decoder to return an error for invalid input.
- Requires LibHeif version 1.13.0 or later, it is ignored on older versions.
- A
DecodingWarningsproperty to theHeifImageclass.- This property returns a collection of warnings that occurred when decoding the image.
- Requires LibHeif version 1.13.0 or later, it returns an empty collection on older versions.
Changed
- The libheif initialization and cleanup methods will be called when creating the
HeifContext.- This applies to libheif version 1.13.0 and later, it will be treated as a no-op on older versions.
Fixed
- Various issues with the documentation.
LibHeifSharp v2.2.0
Added
- An
IsPremultipliedAlphaproperty to theHeifImageandHeifImageHandleclasses.- This property is supported on LibHeif 1.12 and later.
Fixed
- A potential crash when creating the
HeifDepthRepresentationInfo. - A parameter validation issue when reading zero bytes.
LibHeifSharp v2.1.0
Deprecated:
- The
ColorProfileproperty in theHeifImageclass, use theIccColorProfileandNclxColorProfileproperties instead.
Added:
- A
ValidValuesproperty to theHeifIntegerEncoderParameterclass.- This is used to get the supported values for the rav1e
tile-colsandtile-rowsparameters. - Requires LibHeif version 1.10 or later.
- This is used to get the supported values for the rav1e
- Support for the new encoding options in LibHeif versions 1.9.2, 1.10 and 1.11.
- Support for reading and writing images with two color profiles (one ICC profile and one NCLX profile).
- This feature requires LibHeif version 1.10 or later, you can use the
CanWriteTwoColorProfilesproperty in theLibHeifInfoclass for runtime checks. - It must be enabled in the
HeifEncodingOptionsinstance by setting theWriteTwoColorProfilesproperty totrue.
- This feature requires LibHeif version 1.10 or later, you can use the
- Support for reading the vendor-specific auxiliary images.
- Added
GetAuxiliaryImage,GetAuxiliaryImageIdsandGetAuxiliaryTypemethods to theHeifImageHandleclass. - These methods require LibHeif version 1.11 or later.
- Added
- An
AuxiliaryImageTypeproperty to theHeifImageHandleclass.
Fixed:
- A corrupted image bug when using lossless encoding.
- A few issues with the documentation.
LibHeifSharp v2.0.2
Fixed:
A missing marshaling attribute on the write callback.
LibHeifSharp v2.0.1
Changed
- Reduced memory usage when reading small files.
Fixed
- A few issues with the documentation.
- A compatibility issue with some classes that are derived from
MemoryStream.