Class TIFFImageFileDirectory

  • All Implemented Interfaces:
    TIFFConstants

    public class TIFFImageFileDirectory
    extends Object
    implements TIFFConstants
    This class encapsulates all data of a TIFF image file directory (IFD).
    Author:
    Marco Schmidt
    • Field Detail

      • TYPE_CMYK32_INTERLEAVED

        public static final int TYPE_CMYK32_INTERLEAVED
        See Also:
        Constant Field Values
      • TYPE_LOGLUV32_INTERLEAVED

        public static final int TYPE_LOGLUV32_INTERLEAVED
        See Also:
        Constant Field Values
      • artist

        private String artist
      • bitsPerSample

        private int[] bitsPerSample
      • bitsPerPixel

        private int bitsPerPixel
      • bitsPerRow

        private int bitsPerRow
      • bytesBetweenSamples

        private int bytesBetweenSamples
      • bytesPerSample

        private int[] bytesPerSample
      • bytesPerRow

        private int bytesPerRow
      • compression

        private int compression
      • copyright

        private String copyright
      • date

        private Date date
      • dateTime

        private String dateTime
      • dpiX

        private int dpiX
      • dpiY

        private int dpiY
      • extraSamples

        private int[] extraSamples
      • height

        private int height
      • horizontalTiles

        private int horizontalTiles
      • hostComputer

        private String hostComputer
      • imageDescription

        private String imageDescription
      • imageType

        private int imageType
      • invertGraySamples

        private boolean invertGraySamples
      • numStrips

        private int numStrips
      • numTiles

        private int numTiles
      • orientation

        private int orientation
      • pixelsPerRow

        private int pixelsPerRow
      • planarConfiguration

        private int planarConfiguration
      • photometricInterpretation

        private int photometricInterpretation
      • predictor

        private int predictor
      • sampleTypes

        private int[] sampleTypes
      • resolutionUnit

        private int resolutionUnit
      • resolutionX

        private double resolutionX
      • resolutionY

        private double resolutionY
      • rowsPerStrip

        private int rowsPerStrip
      • samplesPerPixel

        private int samplesPerPixel
      • software

        private String software
      • stripByteCounts

        private Vector stripByteCounts
      • stripOffsets

        private Vector stripOffsets
      • t4Options

        private int t4Options
      • t6Options

        private int t6Options
      • tileByteCounts

        private Vector tileByteCounts
      • tileOffsets

        private Vector tileOffsets
      • tileWidth

        private int tileWidth
      • tileHeight

        private int tileHeight
      • verticalTiles

        private int verticalTiles
      • width

        private int width
    • Constructor Detail

      • TIFFImageFileDirectory

        public TIFFImageFileDirectory()
        Initializes all members to null or -1 and creates an internal list for the tags that will be make up this directory.
    • Method Detail

      • append

        public void append​(TIFFTag tag)
        Adds a tag to the end of the internal list of tags.
        Parameters:
        tag - the TIFFTag instance to be appended
      • computeNumBytes

        public int computeNumBytes​(int numPixels)
        TODO: regard extra samples
      • getBitsPerPixel

        public int getBitsPerPixel()
        Returns the number of bits per pixel (not including transparency information).
      • getByteCount

        public int getByteCount​(int tileIndex)
        Returns the number of compressed byte for a given tile. Tile index must not be negative and must be smaller than the number of tiles.
        Parameters:
        tileIndex - zero-based index of tile or strip for which the number of compressed bytes is to be returned
      • getBytesPerRow

        public int getBytesPerRow()
      • getCompression

        public int getCompression()
        Returns the compression method, encoded as a number as found in TIFFConstants (more specifically, the COMPRESSION_xyz constants). Use getCompressionName(int) to get the English name of this compression method.
        Returns:
        compression method
      • getCompressionName

        public static String getCompressionName​(int method)
        Returns the name of a TIFF compression method. If the name is unknown, Unknown method plus the method number is returned. This static method can be used in combination with the value from getCompression().
        Parameters:
        method - the compression method number
        Returns:
        the compression method name
      • getCopyright

        public String getCopyright()
      • getDateTimeString

        public String getDateTimeString()
        If there was a date / time tag in this IFD, its String value is returned.
        See Also:
        getDateTime()
      • getDpiX

        public int getDpiX()
      • getDpiY

        public int getDpiY()
      • getHeight

        public int getHeight()
      • getHostComputer

        public String getHostComputer()
      • getImageDescription

        public String getImageDescription()
      • getImageType

        public int getImageType()
      • getModel

        public String getModel()
      • getNumHorizontalTiles

        public int getNumHorizontalTiles()
      • getNumStrips

        public int getNumStrips()
      • getNumTiles

        public int getNumTiles()
      • getNumVerticalTiles

        public int getNumVerticalTiles()
      • getPalette

        public Palette getPalette()
      • getPhotometricInterpretation

        public int getPhotometricInterpretation()
      • getPredictor

        public int getPredictor()
      • getRowsPerStrip

        public int getRowsPerStrip()
      • getSamplesPerPixel

        public int getSamplesPerPixel()
      • getSoftware

        public String getSoftware()
      • getStripOffsets

        public Vector getStripOffsets()
      • getT4Options

        public int getT4Options()
      • getT6Options

        public int getT6Options()
      • getTileHeight

        public int getTileHeight()
      • getTileOffset

        public long getTileOffset​(int tileIndex)
      • getTileWidth

        public int getTileWidth()
      • getTileX1

        public int getTileX1​(int tileIndex)
      • getTileX2

        public int getTileX2​(int tileIndex)
      • getTileY1

        public int getTileY1​(int tileIndex)
      • getTileY2

        public int getTileY2​(int tileIndex)
      • getWidth

        public int getWidth()
      • initMembers

        public void initMembers()
      • isGrayscale

        public boolean isGrayscale()
      • isPaletted

        public boolean isPaletted()
      • isStriped

        public boolean isStriped()
        Returns true if the image belonging to this IFD is stored as strips, false otherwise.
        See Also:
        isTiled()
      • isTiled

        public boolean isTiled()
        Returns true if the image belonging to this IFD is stored as tiles, false otherwise.
        See Also:
        isStriped()
      • setTimeZone

        public void setTimeZone​(TimeZone tz)
        Sets the time zone to be used when trying to interpret dates found in a TIFFConstants.TAG_DATE_TIME tag. Example call: setTimeZone(TimeZone.getTimeZone("America/New_York");.
        Parameters:
        tz - TimeZone object