Ingvar Stepanyan a6fb855121 Improve deflate support
- 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.
 - Deprecate `InflateError` - this was used for wrapping `miniz_oxide` raw status, but `flate2` already reports them as `io::Error` instead. This makes errors from both Lzw and Deflate modes more consistent - they're all now just `io::Error`.
 - Add support for new `Deflate` tag in addition to `OldDeflate` - format-wise it's same Zlib, and on practice decodes successfully with the same underlying code.
 - Slightly simplify partial reads from the `Reader` by using the `std::io::copy` helper instead of doing it manually.

Fixes #131.
2021-05-08 15:34:14 +01:00
2021-05-08 15:34:14 +01:00
2018-03-12 18:26:44 +01:00
2021-05-08 15:34:14 +01:00
2020-12-12 19:49:19 +01:00
2018-03-12 13:43:42 +01:00

image-tiff

Build Status Documentation Further crate info

TIFF decoding and encoding library in pure Rust

Supported

Features

  • Baseline spec (other than formats and tags listed below as not supported)
  • Multipage
  • BigTIFF
  • Incremental decoding

Formats

This table lists photometric interpretations and sample formats which are supported for encoding and decoding. The entries are ColorType variants for which sample bit depths are supported. Only samples where all bit depths are equal are currently supported. For example, RGB(8) means that the bit depth [8, 8, 8] is supported and will be interpreted as an 8 bit per channel RGB color type.

PhotometricInterpretation UINT Format IEEEFP Format
WhiteIsZero Gray(8|16|32|64) Gray(32|64)
BlackIsZero Gray(8|16|32|64) Gray(32|64)
RGB RGB(8|16|32|64), RGBA(8|16|32|64) RGB(32|64), RGBA(32|64)
RGBPalette
Mask
CMYK CMYK(8|16|32|64) CMYK(32|64)
YCbCr
CIELab

Compressions

Decoding Encoding
None ✓ ✓
LZW ✓
Deflate ✓
PackBits ✓

Not yet supported

Formats and interpretations not listed above or with empty entries are unsupported.

  • Baseline tags
    • ExtraSamples
  • Extension tags
S
Description
Fork of https://github.com/image-rs/image-tiff, modifying the tiff crate to be able to read RGBPalette tiffs.
Readme MIT
14 MiB
0 Stars 1 Watchers 0 Forks
Languages
Rust 88.1%
C 11.5%
Shell 0.4%