Class ThumbsDBImageReader


  • public final class ThumbsDBImageReader
    extends com.twelvemonkeys.imageio.ImageReaderBase
    ThumbsDBImageReader
    Version:
    $Id: ThumbsDBImageReader.java,v 1.0 22.jan.2007 18:49:38 haku Exp$
    Author:
    Harald Kuhr, last modified by $Author: haku$
    See Also:
    CompoundDocument, Wikipedia: Thumbs.db
    • Field Summary

      • Fields inherited from class com.twelvemonkeys.imageio.ImageReaderBase

        imageInput
      • Fields inherited from class javax.imageio.ImageReader

        availableLocales, ignoreMetadata, input, locale, minIndex, originatingProvider, progressListeners, seekForwardOnly, updateListeners, warningListeners, warningLocales
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void abort()  
      void dispose()  
      int getHeight​(int pIndex)  
      java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes​(int pIndex)  
      int getNumImages​(boolean allowSearch)  
      int getWidth​(int pIndex)  
      boolean isLoadEagerly()  
      boolean isPresent​(java.lang.String pFileName)  
      static void main​(java.lang.String[] pArgs)  
      java.awt.image.BufferedImage read​(int pIndex, javax.imageio.ImageReadParam pParam)
      Reads the image data from the given input stream, and returns it as a BufferedImage.
      java.awt.image.BufferedImage read​(java.lang.String pName, javax.imageio.ImageReadParam pParam)
      Reads the image data from the given input stream, and returns it as a BufferedImage.
      protected void resetMembers()  
      void setInput​(java.lang.Object input, boolean seekForwardOnly, boolean ignoreMetadata)  
      void setLoadEagerly​(boolean pLoadEagerly)
      Instructs the reader wether it should read and cache alle thumbnails in sequence, during the first read operation.
      • Methods inherited from class com.twelvemonkeys.imageio.ImageReaderBase

        assertInput, checkBounds, fakeAOI, fakeSubsampling, getDestination, getImageMetadata, getStreamMetadata, hasExplicitDestination, reset, showIt
      • Methods inherited from class javax.imageio.ImageReader

        abortRequested, addIIOReadProgressListener, addIIOReadUpdateListener, addIIOReadWarningListener, canReadRaster, checkReadParamBandSettings, clearAbortRequest, computeRegions, getAspectRatio, getAvailableLocales, getDefaultReadParam, getFormatName, getImageMetadata, getInput, getLocale, getMinIndex, getNumThumbnails, getOriginatingProvider, getRawImageType, getSourceRegion, getStreamMetadata, getThumbnailHeight, getThumbnailWidth, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, hasThumbnails, isIgnoringMetadata, isImageTiled, isRandomAccessEasy, isSeekForwardOnly, processImageComplete, processImageProgress, processImageStarted, processImageUpdate, processPassComplete, processPassStarted, processReadAborted, processSequenceComplete, processSequenceStarted, processThumbnailComplete, processThumbnailPassComplete, processThumbnailPassStarted, processThumbnailProgress, processThumbnailStarted, processThumbnailUpdate, processWarningOccurred, processWarningOccurred, read, readAll, readAll, readAsRenderedImage, readerSupportsThumbnails, readRaster, readThumbnail, readTile, readTileRaster, removeAllIIOReadProgressListeners, removeAllIIOReadUpdateListeners, removeAllIIOReadWarningListeners, removeIIOReadProgressListener, removeIIOReadUpdateListener, removeIIOReadWarningListener, setInput, setInput, setLocale
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ThumbsDBImageReader

        public ThumbsDBImageReader()
    • Method Detail

      • resetMembers

        protected void resetMembers()
        Specified by:
        resetMembers in class com.twelvemonkeys.imageio.ImageReaderBase
      • dispose

        public void dispose()
        Overrides:
        dispose in class com.twelvemonkeys.imageio.ImageReaderBase
      • isLoadEagerly

        public boolean isLoadEagerly()
      • setLoadEagerly

        public void setLoadEagerly​(boolean pLoadEagerly)
        Instructs the reader wether it should read and cache alle thumbnails in sequence, during the first read operation.

        This is useful mainly if you need to read all the thumbnails, and you need them in random order, as it requires less repositioning in the underlying stream.

        Parameters:
        pLoadEagerly - true if the reader should read all thumbs on first read
      • read

        public java.awt.image.BufferedImage read​(int pIndex,
                                                 javax.imageio.ImageReadParam pParam)
                                          throws java.io.IOException
        Reads the image data from the given input stream, and returns it as a BufferedImage.
        Specified by:
        read in class javax.imageio.ImageReader
        Parameters:
        pIndex - the index of the image to read
        pParam - additional parameters used while decoding, may be null, in which case defaults will be used
        Returns:
        a BufferedImage
        Throws:
        java.lang.IndexOutOfBoundsException - if pIndex is out of bounds
        java.lang.IllegalStateException - if the input source has not been set
        java.io.IOException - if an error occurs during reading
      • read

        public java.awt.image.BufferedImage read​(java.lang.String pName,
                                                 javax.imageio.ImageReadParam pParam)
                                          throws java.io.IOException
        Reads the image data from the given input stream, and returns it as a BufferedImage.
        Parameters:
        pName - the name of the image to read
        pParam - additional parameters used while decoding, may be null, in which case defaults will be used
        Returns:
        a BufferedImage
        Throws:
        java.io.FileNotFoundException - if the given file name is not found in the "Catalog" entry of the CompoundDocument
        java.lang.IllegalStateException - if the input source has not been set
        java.io.IOException - if an error occurs during reading
      • abort

        public void abort()
        Overrides:
        abort in class javax.imageio.ImageReader
      • setInput

        public void setInput​(java.lang.Object input,
                             boolean seekForwardOnly,
                             boolean ignoreMetadata)
        Overrides:
        setInput in class com.twelvemonkeys.imageio.ImageReaderBase
      • getNumImages

        public int getNumImages​(boolean allowSearch)
                         throws java.io.IOException
        Overrides:
        getNumImages in class com.twelvemonkeys.imageio.ImageReaderBase
        Throws:
        java.io.IOException
      • getWidth

        public int getWidth​(int pIndex)
                     throws java.io.IOException
        Specified by:
        getWidth in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • getHeight

        public int getHeight​(int pIndex)
                      throws java.io.IOException
        Specified by:
        getHeight in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • getImageTypes

        public java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes​(int pIndex)
                                                                           throws java.io.IOException
        Specified by:
        getImageTypes in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • isPresent

        public boolean isPresent​(java.lang.String pFileName)
      • main

        public static void main​(java.lang.String[] pArgs)
                         throws java.io.IOException
        Throws:
        java.io.IOException