Browse Source

Fill TIFF Readme tables with current status.

pull/1570/head
Andrew Wilkinson 9 years ago
parent
commit
59b5df5dd9
  1. 59
      src/ImageSharp/Formats/Tiff/README.md

59
src/ImageSharp/Formats/Tiff/README.md

@ -23,30 +23,41 @@
## Implementation Status ## Implementation Status
### Deviations from the TIFF spec (to be fixed)
- Decoder
- A Baseline TIFF reader must skip over extra components (e.g. RGB with 4 samples per pixels)
- NB: Need to handle this for both planar and chunky data
- If the SampleFormat field is present and not 1 - fail gracefully if you cannot handle this
- Compression=None should treat 16/32-BitsPerSample for all samples as SHORT/LONG (for byte order and padding rows)
- RowsPerStrip should default to 2^32-1 (effectively infinity) to store the image as a single strip
- Check Planar format data - is this encoded as strips in order RGBRGBRGB or RRRGGGBBB?
- Make sure we ignore any strips that are not needed for the image (if too many are present)
### Compression Formats ### Compression Formats
| |Encoder|Decoder|Comments | | |Encoder|Decoder|Comments |
|---------------------------|:-----:|:-----:|--------------------------| |---------------------------|:-----:|:-----:|--------------------------|
|None | | | | |None | | Y | |
|Ccitt1D | | | | |Ccitt1D | | | |
|PackBits | | | | |PackBits | | Y | |
|CcittGroup3Fax | | | | |CcittGroup3Fax | | | |
|CcittGroup4Fax | | | | |CcittGroup4Fax | | | |
|Lzw | | | | |Lzw | | Y | Based on ImageSharp GIF LZW implementation - this code could be modified to be (i) shared, or (ii) optimised for each case |
|Old Jpeg | | | | |Old Jpeg | | | |
|Jpeg (Technote 2) | | | | |Jpeg (Technote 2) | | | |
|Deflate (Technote 2) | | | | |Deflate (Technote 2) | | Y | |
|Old Deflate (Technote 2) | | | | |Old Deflate (Technote 2) | | Y | |
### Photometric Interpretation Formats ### Photometric Interpretation Formats
| |Encoder|Decoder|Comments | | |Encoder|Decoder|Comments |
|---------------------------|:-----:|:-----:|--------------------------| |---------------------------|:-----:|:-----:|--------------------------|
|WhiteIsZero | | | | |WhiteIsZero | | Y | General + 1/4/8-bit optimised implementations |
|BlackIsZero | | | | |BlackIsZero | | Y | General + 1/4/8-bit optimised implementations |
|Rgb (Chunky) | | | | |Rgb (Chunky) | | Y | General + Rgb888 optimised implementation |
|Rgb (Planar) | | | | |Rgb (Planar) | | Y | General implementation only |
|PaletteColor | | | | |PaletteColor | | Y | General implementation only |
|TransparencyMask | | | | |TransparencyMask | | | |
|Separated (TIFF Extension) | | | | |Separated (TIFF Extension) | | | |
|YCbCr (TIFF Extension) | | | | |YCbCr (TIFF Extension) | | | |
@ -59,11 +70,11 @@
|---------------------------|:-----:|:-----:|--------------------------| |---------------------------|:-----:|:-----:|--------------------------|
|NewSubfileType | | | | |NewSubfileType | | | |
|SubfileType | | | | |SubfileType | | | |
|ImageWidth | | | | |ImageWidth | | Y | |
|ImageLength | | | | |ImageLength | | Y | |
|BitsPerSample | | | | |BitsPerSample | | Y | |
|Compression | | | | |Compression | | Y | |
|PhotometricInterpretation | | | | |PhotometricInterpretation | | Y | |
|Threshholding | | | | |Threshholding | | | |
|CellWidth | | | | |CellWidth | | | |
|CellLength | | | | |CellLength | | | |
@ -71,26 +82,26 @@
|ImageDescription | | | | |ImageDescription | | | |
|Make | | | | |Make | | | |
|Model | | | | |Model | | | |
|StripOffsets | | | | |StripOffsets | | Y | |
|Orientation | | | | |Orientation | | | |
|SamplesPerPixel | | | | |SamplesPerPixel | | | Currently ignored, as can be inferred from count of BitsPerSample |
|RowsPerStrip | | | | |RowsPerStrip | | Y | |
|StripByteCounts | | | | |StripByteCounts | | Y | |
|MinSampleValue | | | | |MinSampleValue | | | |
|MaxSampleValue | | | | |MaxSampleValue | | | |
|XResolution | | | | |XResolution | | Y | |
|YResolution | | | | |YResolution | | Y | |
|PlanarConfiguration | | | | |PlanarConfiguration | | Y | |
|FreeOffsets | | | | |FreeOffsets | | | |
|FreeByteCounts | | | | |FreeByteCounts | | | |
|GrayResponseUnit | | | | |GrayResponseUnit | | | |
|GrayResponseCurve | | | | |GrayResponseCurve | | | |
|ResolutionUnit | | | | |ResolutionUnit | | Y | |
|Software | | | | |Software | | | |
|DateTime | | | | |DateTime | | | |
|Artist | | | | |Artist | | | |
|HostComputer | | | | |HostComputer | | | |
|ColorMap | | | | |ColorMap | | Y | |
|ExtraSamples | | | | |ExtraSamples | | | |
|Copyright | | | | |Copyright | | | |

Loading…
Cancel
Save