Class SunJPEGEncoderAdapter

  • All Implemented Interfaces:
    ImageEncoder

    public class SunJPEGEncoderAdapter
    extends java.lang.Object
    implements ImageEncoder
    Adapter class for the Sun JPEG Encoder. The ImageEncoderFactory will only return a reference to this class by default if the library has been compiled under a JDK 1.4+ and is being run using a JRE 1.4+.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private float quality
      The quality setting (in the range 0.0f to 1.0f).
    • Constructor Summary

      Constructors 
      Constructor Description
      SunJPEGEncoderAdapter()
      Creates a new SunJPEGEncoderAdapter instance.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      byte[] encode​(java.awt.image.BufferedImage bufferedImage)
      Encodes an image in JPEG format.
      void encode​(java.awt.image.BufferedImage bufferedImage, java.io.OutputStream outputStream)
      Encodes an image in JPEG format and writes it to an output stream.
      float getQuality()
      Returns the quality of the image encoding, which is a number in the range 0.0f to 1.0f (higher values give better quality output, but larger file sizes).
      boolean isEncodingAlpha()
      Returns false always, indicating that this encoder does not encode alpha transparency.
      void setEncodingAlpha​(boolean encodingAlpha)
      Set whether the encoder should encode alpha transparency (this is not supported for JPEG, so this method does nothing).
      void setQuality​(float quality)
      Set the quality of the image encoding.
      • Methods inherited from class java.lang.Object

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

      • quality

        private float quality
        The quality setting (in the range 0.0f to 1.0f).
    • Constructor Detail

      • SunJPEGEncoderAdapter

        public SunJPEGEncoderAdapter()
        Creates a new SunJPEGEncoderAdapter instance.
    • Method Detail

      • getQuality

        public float getQuality()
        Returns the quality of the image encoding, which is a number in the range 0.0f to 1.0f (higher values give better quality output, but larger file sizes). The default value is 0.95f.
        Specified by:
        getQuality in interface ImageEncoder
        Returns:
        A float representing the quality, in the range 0.0f to 1.0f.
        See Also:
        setQuality(float)
      • setQuality

        public void setQuality​(float quality)
        Set the quality of the image encoding.
        Specified by:
        setQuality in interface ImageEncoder
        Parameters:
        quality - A float representing the quality (in the range 0.0f to 1.0f).
        See Also:
        getQuality()
      • isEncodingAlpha

        public boolean isEncodingAlpha()
        Returns false always, indicating that this encoder does not encode alpha transparency.
        Specified by:
        isEncodingAlpha in interface ImageEncoder
        Returns:
        false.
      • setEncodingAlpha

        public void setEncodingAlpha​(boolean encodingAlpha)
        Set whether the encoder should encode alpha transparency (this is not supported for JPEG, so this method does nothing).
        Specified by:
        setEncodingAlpha in interface ImageEncoder
        Parameters:
        encodingAlpha - ignored.
      • encode

        public byte[] encode​(java.awt.image.BufferedImage bufferedImage)
                      throws java.io.IOException
        Encodes an image in JPEG format.
        Specified by:
        encode in interface ImageEncoder
        Parameters:
        bufferedImage - the image to be encoded (null not permitted).
        Returns:
        The byte[] that is the encoded image.
        Throws:
        java.io.IOException - if there is an I/O problem.
        java.lang.NullPointerException - if bufferedImage is null.
      • encode

        public void encode​(java.awt.image.BufferedImage bufferedImage,
                           java.io.OutputStream outputStream)
                    throws java.io.IOException
        Encodes an image in JPEG format and writes it to an output stream.
        Specified by:
        encode in interface ImageEncoder
        Parameters:
        bufferedImage - the image to be encoded (null not permitted).
        outputStream - the OutputStream to write the encoded image to (null not permitted).
        Throws:
        java.io.IOException - if there is an I/O problem.
        java.lang.NullPointerException - if bufferedImage is null.