com.google.appengine.api.images
Class ImagesServiceFactory

java.lang.Object
  extended by com.google.appengine.api.images.ImagesServiceFactory

public final class ImagesServiceFactory
extends java.lang.Object

Factory for creating an ImagesService, Images and Transforms.


Method Summary
static ImagesService getImagesService()
          Creates an implementation of the ImagesService.
static Composite makeComposite(Image image, int xOffset, int yOffset, float opacity, Composite.Anchor anchor)
          Creates an image composition operation.
static CompositeTransform makeCompositeTransform()
          Creates a composite transform that can represent multiple transforms applied in series.
static CompositeTransform makeCompositeTransform(java.util.Collection<Transform> transforms)
          Creates a composite transform that can represent multiple transforms applied in series.
static Transform makeCrop(double leftX, double topY, double rightX, double bottomY)
          Creates a transform that will crop an image to fit within the bounding box specified.
static Transform makeCrop(float leftX, float topY, float rightX, float bottomY)
          Creates a transform that will crop an image to fit within the bounding box specified.
static Transform makeHorizontalFlip()
          Creates a transform that will horizontally flip an image.
static Image makeImage(byte[] imageData)
          Creates an image from the provided imageData.
static Transform makeImFeelingLucky()
          Creates a transform that automatically adjust contrast and color levels.
static Transform makeResize(int width, int height)
          Creates a transform that will resize an image to fit within a box with width width and height height.
static Transform makeRotate(int degrees)
          Creates a transform that rotates an image by degrees degrees clockwise.
static Transform makeVerticalFlip()
          Creates a transform that will vertically flip an image.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getImagesService

public static ImagesService getImagesService()
Creates an implementation of the ImagesService.

Returns:
an images service

makeImage

public static Image makeImage(byte[] imageData)
Creates an image from the provided imageData.

Parameters:
imageData - image data to store in the image
Returns:
an Image containing the supplied image data
Throws:
java.lang.IllegalArgumentException - If imageData is null or empty.

makeResize

public static Transform makeResize(int width,
                                   int height)
Creates a transform that will resize an image to fit within a box with width width and height height.

Parameters:
width - width of the bounding box
height - height of the bounding box
Returns:
a resize transform
Throws:
java.lang.IllegalArgumentException - If width or height are negative or greater than MAX_RESIZE_DIMENSIONS or if both width and height are 0.

makeCrop

public static Transform makeCrop(float leftX,
                                 float topY,
                                 float rightX,
                                 float bottomY)
Creates a transform that will crop an image to fit within the bounding box specified. The arguments define the top left and bottom right corners of the bounding box used to crop the image as a percentage of the total image size. Each argument should be in the range 0.0 to 1.0 inclusive.

Parameters:
leftX - X coordinate of the top left corner of the bounding box
topY - Y coordinate of the top left corner of the bounding box
rightX - X coordinate of the bottom right corner of the bounding box
bottomY - Y coordinate of the bottom right corner of the bounding box
Returns:
a crop transform
Throws:
java.lang.IllegalArgumentException - If any of the arguments are outside the range 0.0 to 1.0 or if leftX >= rightX or topY >= bottomY.

makeCrop

public static Transform makeCrop(double leftX,
                                 double topY,
                                 double rightX,
                                 double bottomY)
Creates a transform that will crop an image to fit within the bounding box specified. The arguments define the top left and bottom right corners of the bounding box used to crop the image as a percentage of the total image size. Each argument should be in the range 0.0 to 1.0 inclusive.

Parameters:
leftX - X coordinate of the top left corner of the bounding box
topY - Y coordinate of the top left corner of the bounding box
rightX - X coordinate of the bottom right corner of the bounding box
bottomY - Y coordinate of the bottom right corner of the bounding box
Returns:
a crop transform
Throws:
java.lang.IllegalArgumentException - If any of the arguments are outside the range 0.0 to 1.0 or if leftX >= rightX or topY >= bottomY.

makeVerticalFlip

public static Transform makeVerticalFlip()
Creates a transform that will vertically flip an image.

Returns:
a vertical flip transform

makeHorizontalFlip

public static Transform makeHorizontalFlip()
Creates a transform that will horizontally flip an image.

Returns:
a horizontal flip transform

makeRotate

public static Transform makeRotate(int degrees)
Creates a transform that rotates an image by degrees degrees clockwise.

Parameters:
degrees - The number of degrees by which to rotate. Must be a multiple of 90.
Returns:
a rotation transform
Throws:
java.lang.IllegalArgumentException - If degrees is not divisible by 90

makeImFeelingLucky

public static Transform makeImFeelingLucky()
Creates a transform that automatically adjust contrast and color levels. This is similar to the "I'm Feeling Lucky" button in Picasa.

Returns:
an ImFeelingLucky autolevel transform

makeCompositeTransform

public static CompositeTransform makeCompositeTransform(java.util.Collection<Transform> transforms)
Creates a composite transform that can represent multiple transforms applied in series.

Parameters:
transforms - Transforms for this composite transform to apply.
Returns:
a composite transform containing the provided transforms

makeCompositeTransform

public static CompositeTransform makeCompositeTransform()
Creates a composite transform that can represent multiple transforms applied in series.

Returns:
an empty composite transform

makeComposite

public static Composite makeComposite(Image image,
                                      int xOffset,
                                      int yOffset,
                                      float opacity,
                                      Composite.Anchor anchor)
Creates an image composition operation.

Parameters:
image - The image to be composited.
xOffset - Offset in the x axis from the anchor point.
yOffset - Offset in the y axis from the anchor point.
opacity - Opacity to be used for the image in range [0.0, 1.0].
anchor - Anchor position from the enum Composite.Anchor. The anchor position of the image is aligned with the anchor position of the canvas and then the offsets are applied.
Returns:
A composition operation.
Throws:
java.lang.IllegalArgumentException - If image is null or empty, xOffset or yOffset is outside the range [-4000, 4000], opacity is outside the range [0.0, 1.0] or anchor is null.