/* ImageEncoder.java
Purpose:
Description:
History:
Tue Jun 24 15:44:41 2008, Created by tomyeh
Copyright (C) 2008 Potix Corporation. All Rights Reserved.
{{IS_RIGHT
This program is distributed under LGPL Version 2.1 in the hope that
it will be useful, but WITHOUT ANY WARRANTY.
}}IS_RIGHT
*/
package org.zkoss.image.encoder;
import java.awt.image.RenderedImage;
/**
* Represents an image encoder used to encode an AWT image into
* a particular format, such as PNG.
*
* @author tomyeh
* @see ImageEncoders#newInstance
* @see ImageEncoders#setEncoderClass
* @since 3.0.7
*/
public interface ImageEncoder {
/** Encodes an AWT image into a byte array in a particular format.
*/
public byte[] encode(RenderedImage image) throws java.io.IOException;
/** Return the quality of the image encoding.
*/
public float getQuality();
/** Sets the quality of the image encoding.
* Simply does nothing if the encoder does not support it.
*/
public void setQuality(float quality);
/** Returns whether to encode the alpha transparency.
*/
public boolean isEncodingAlpha();
/** Sets whether to encode the alpha transparency.
* Simply does nothing if the encoder does not support it.
*/
public void setEncodingAlpha(boolean encodeAlpha);
}