extensions/net.sf.basedb.thumbnails/trunk/src/net/sf/basedb/thumbnails/ImageLoader.java

Code
Comments
Other
Rev Date Author Line
3417 24 Jun 15 nicklas 1 package net.sf.basedb.thumbnails;
3417 24 Jun 15 nicklas 2
3417 24 Jun 15 nicklas 3 import java.io.IOException;
3417 24 Jun 15 nicklas 4 import java.io.InputStream;
3417 24 Jun 15 nicklas 5
6043 11 Nov 20 nicklas 6 import org.imgscalr.Scalr.Rotation;
6043 11 Nov 20 nicklas 7
3417 24 Jun 15 nicklas 8 /**
3417 24 Jun 15 nicklas 9   Interface for creating an image from the given input stream. The image
3417 24 Jun 15 nicklas 10   should be the "full" image. It will be scaled to thumbnail size by
3417 24 Jun 15 nicklas 11   the calling code.
3417 24 Jun 15 nicklas 12   
3417 24 Jun 15 nicklas 13   @author nicklas
3417 24 Jun 15 nicklas 14   @since 1.0
3417 24 Jun 15 nicklas 15 */
3417 24 Jun 15 nicklas 16 public interface ImageLoader 
3417 24 Jun 15 nicklas 17 {
3417 24 Jun 15 nicklas 18
3417 24 Jun 15 nicklas 19   /**
5351 10 Apr 19 nicklas 20     Read the input stream as an image.
6046 11 Nov 20 nicklas 21     @param imageIndex If the file contains multiple images, the
6046 11 Nov 20 nicklas 22       index specify which one to use. The default value is -1 which
6046 11 Nov 20 nicklas 23       means that a proper image should be automatically selected.
6046 11 Nov 20 nicklas 24     @since 1.1, 1.2
3417 24 Jun 15 nicklas 25   */
6046 11 Nov 20 nicklas 26   public void loadImage(InputStream in, int imageIndex)
3417 24 Jun 15 nicklas 27     throws IOException;
3417 24 Jun 15 nicklas 28   
5351 10 Apr 19 nicklas 29   /**
5351 10 Apr 19 nicklas 30     Convert the image to a thumbnail of the given size.
6043 11 Nov 20 nicklas 31     @since 1.1, 1.2
5351 10 Apr 19 nicklas 32   */
6053 13 Nov 20 nicklas 33   public byte[] getThumbImage(ThumbnailSize size, Rotation rotation, Crop crop)
5351 10 Apr 19 nicklas 34     throws IOException;
5351 10 Apr 19 nicklas 35
5351 10 Apr 19 nicklas 36   /**
5351 10 Apr 19 nicklas 37     Get the MIME type of the thumbnails.
5351 10 Apr 19 nicklas 38     @since 1.1
5351 10 Apr 19 nicklas 39   */
5351 10 Apr 19 nicklas 40   public String getThumbMimeType();
5351 10 Apr 19 nicklas 41   
5351 10 Apr 19 nicklas 42   /**
5351 10 Apr 19 nicklas 43     Get the file extension to use for the thumbnails.
5351 10 Apr 19 nicklas 44     @since 1.1
5351 10 Apr 19 nicklas 45   */
5351 10 Apr 19 nicklas 46   public String getThumbExtension();
5351 10 Apr 19 nicklas 47   
3417 24 Jun 15 nicklas 48 }