87 lines
4.3 KiB
Markdown
87 lines
4.3 KiB
Markdown
# Version 0.7.0
|
||
|
||
New features:
|
||
* Support for encoding BigTiff ([#122](https://github.com/image-rs/image-tiff/pull/122))
|
||
* _Breaking:_ Encoder types now have a generic parameter to differentiate BigTiff and standard Tiff encoding. Defaults to standard Tiff.
|
||
* Basic tile decoding ([#125](https://github.com/image-rs/image-tiff/pull/125))
|
||
* _Breaking:_ There is a new `TiffError::UsageError` variant.
|
||
* Support for datatypes `Int8` and `Int16` ([#114](https://github.com/image-rs/image-tiff/pull/114))
|
||
* _Breaking:_ `DecodingResult` and `DecodingBuffer` have the two new variants `I8` and `I16`.
|
||
* Support for `i32` arrays ([#118](https://github.com/image-rs/image-tiff/pull/118/files))
|
||
* _Breaking:_ `DecodingResult` and `DecodingBuffer` have a new `I32` variant.
|
||
* Support for `Ifd` and `IfdBig` tag types and `I64` data type ([#119](https://github.com/image-rs/image-tiff/pull/119))
|
||
* _Breaking:_ `DecodingResult` and `DecodingBuffer` have a new `I64` variant.
|
||
* Add `SMinSampleValue` and `SMaxSampleValue` ([#123](https://github.com/image-rs/image-tiff/pull/123))
|
||
|
||
Changes:
|
||
* Improve deflate support ([#132](https://github.com/image-rs/image-tiff/pull/132))
|
||
* Switch to streaming decompression via `flate2`. Aside from performance improvements and lower RAM consumption, this fixes a bug where `max_uncompressed_length` was precalculated for a single tile but then used as a hard limit on the whole data, failing to decompress any tiled images.
|
||
* Add support for new `Deflate` tag in addition to `OldDeflate`.
|
||
* _Breaking:_ Remove `InflateError`, which is no longer needed with `flate2` ([#134](https://github.com/image-rs/image-tiff/pull/134))
|
||
* _Breaking:_ Support for `MinIsWhite` is restricted to unsigned and floating
|
||
point values. This is expected to be be re-added once some contradictory
|
||
interpretation regarding semantics for signed values is resolved.
|
||
|
||
Fixes:
|
||
* Validate that ASCII tags are valid ASCII and end with a null byte ([#121](https://github.com/image-rs/image-tiff/pull/121))
|
||
|
||
Internal:
|
||
* Simplify decompression logic ([#126](https://github.com/image-rs/image-tiff/pull/126))
|
||
* Simplify `expand_strip` ([#128](https://github.com/image-rs/image-tiff/pull/128))
|
||
|
||
# Version 0.6.1
|
||
|
||
New features:
|
||
* Support for reading `u16` and ascii string tags.
|
||
* Added `Limits::unlimited` for disabling all limits.
|
||
* Added `ImageEncoder::rows_per_strip` to overwrite the default.
|
||
|
||
Changes:
|
||
* The default strip size for chunked encoding is now 1MB, up from 8KB. This
|
||
should lead to more efficient decoding and compression.
|
||
|
||
Fixes:
|
||
* Fixed a bug where LZW compressed strips could not be decoded, instead
|
||
returning an error `Inconsistent sizes encountered`.
|
||
* Reading a tag with a complex type and a single value returns the proper Value
|
||
variant, instead of a vector with one entry.
|
||
|
||
# Version 0.6.0
|
||
|
||
New features:
|
||
* Support for decoding BigTIFF with 64-bit offsets
|
||
* The value types byte, `f32`, `f64` are now recognized
|
||
* Support for Modern JPEG encoded images
|
||
|
||
Improvements:
|
||
* Better support for adding auxiliary tags before encoding image data
|
||
* Switched to lzw decoder library `weezl` for performance
|
||
* The `ColorType` trait now supports `SAMPLE_ENCODING` hints
|
||
|
||
Fixes:
|
||
* Fixed decoding of inline ASCII in tags
|
||
* Fixed handling after null terminator in ASCII data
|
||
* Recognize tile and sample format tags
|
||
|
||
# Version 0.5.0
|
||
|
||
* Added support for 32-bit and 64-bit decoded values.
|
||
* Added CMYK(16|32|64) color type support.
|
||
* Check many internal integer conversions to increase stability. This should
|
||
only lead to images being reported as faulty that would previously silently
|
||
break platform limits. If there are any false positives, please report them.
|
||
* Remove an erroneous check of decoded length in lzw compressed images.
|
||
|
||
# Version 0.4.0
|
||
|
||
* Several enumerations are now non_exhaustive for future extensions.
|
||
These are `Tag`, `Type`, `Value`, `PhotometricInterpretation`,
|
||
`CompressionMethod`, `Predictor`.
|
||
* Enums gained a dedicated method to convert to their TIFF variant value with
|
||
the specified type. Performing these conversions by casting the discriminant
|
||
with `as` is not guaranteed to be stable, except where documented explicitly.
|
||
* Removed the num-derive and num dependencies.
|
||
* Added support for decoding `deflate` compressed images.
|
||
* Make the decoder `Limits` customizable by exposing members.
|
||
* Fixed multi-page TIFF encoding writing incorrect offsets.
|