TiffImageMetadata class

Decoded baseline metadata for a single TIFF page (one IFD), independent of how the pixel data is compressed. Pixel data is located either via strip tags or tile tags — exactly one of the two is populated, see isTiled.

Constructors

TiffImageMetadata({required int width, required int height, required List<int> bitsPerSample, required int samplesPerPixel, required int compression, required int predictor, required TiffPhotometric? photometric, required TiffPlanarConfiguration planarConfiguration, required int rowsPerStrip, required List<int> stripOffsets, required List<int> stripByteCounts, required int? tileWidth, required int? tileLength, required List<int>? tileOffsets, required List<int>? tileByteCounts, required List<int>? colorMap, required GeoTiffMetadata? geoTiff, required Map<int, TiffTagValue>? exifTags, required Map<int, TiffTagValue>? gpsTags, required Map<int, TiffTagValue> rawTags})
const
TiffImageMetadata.fromTags(Map<int, TiffTagValue> tags, {TiffByteReader? reader, bool isBigTiff = false})
reader/isBigTiff are only needed to resolve the EXIF/GPS sub-IFDs (tags 34665/34853, each just an offset to another IFD elsewhere in the file) — pass null to skip that (GeoTIFF and every other tag are already fully resolved in tags and don't need it).
factory

Properties

bitsPerSample List<int>
final
colorMap List<int>?
final
compression int
final
exifTags Map<int, TiffTagValue>?
Resolved tags from the EXIF sub-IFD (tag 34665), if present — see ExifTagId for common tag IDs.
final
geoTiff GeoTiffMetadata?
GeoTIFF georeferencing metadata, if this page has any — see GeoTiffMetadata.
final
gpsTags Map<int, TiffTagValue>?
Resolved tags from the GPS sub-IFD (tag 34853), if present — see GpsTagId for common tag IDs.
final
hashCode int
The hash code for this object.
no setterinherited
height int
final
isTiled bool
no setter
jpegTables Uint8List?
JPEGTables (tag 347) — shared quantization/Huffman tables prepended to each strip/tile's "abbreviated" JPEG stream, when compression is 6 or 7 and the encoder chose to share tables across strips.
no setter
photometric TiffPhotometric?
final
planarConfiguration TiffPlanarConfiguration
final
predictor int
final
rawTags Map<int, TiffTagValue>
Every tag found in this page's IFD, resolved but unfiltered — use this for tags not modeled above (ImageDescription, ...).
final
rowsPerStrip int
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
samplesPerPixel int
final
stripByteCounts List<int>
final
stripOffsets List<int>
final
t4Options int
T4Options (tag 292) — only meaningful when compression is 3.
no setter
t6Options int
T6Options (tag 293) — only meaningful when compression is 4.
no setter
tileByteCounts List<int>?
final
tileLength int?
final
tileOffsets List<int>?
final
tileWidth int?
final
width int
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited