Class CMYKJPEGImageReader

java.lang.Object
javax.imageio.ImageReader
ch.randelshofer.media.jpeg.CMYKJPEGImageReader

public class CMYKJPEGImageReader extends ImageReader
Reads a JPEG image with colors in the CMYK color space.
  • Constructor Details

  • Method Details

    • getNumImages

      public int getNumImages(boolean allowSearch) throws IOException
      Specified by:
      getNumImages in class ImageReader
      Throws:
      IOException
    • getWidth

      public int getWidth(int imageIndex) throws IOException
      Specified by:
      getWidth in class ImageReader
      Throws:
      IOException
    • getHeight

      public int getHeight(int imageIndex) throws IOException
      Specified by:
      getHeight in class ImageReader
      Throws:
      IOException
    • getImageTypes

      public Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex) throws IOException
      Specified by:
      getImageTypes in class ImageReader
      Throws:
      IOException
    • getStreamMetadata

      public IIOMetadata getStreamMetadata() throws IOException
      Specified by:
      getStreamMetadata in class ImageReader
      Throws:
      IOException
    • getImageMetadata

      public IIOMetadata getImageMetadata(int imageIndex) throws IOException
      Specified by:
      getImageMetadata in class ImageReader
      Throws:
      IOException
    • read

      public BufferedImage read(int imageIndex, ImageReadParam param) throws IOException
      Specified by:
      read in class ImageReader
      Throws:
      IOException
    • isYCCKInversed

      public boolean isYCCKInversed()
      Returns:
      the YCCKInversed property.
    • setYCCKInversed

      public void setYCCKInversed(boolean newValue)
      Parameters:
      newValue - the new value
    • read

      public static BufferedImage read(ImageInputStream in, boolean inverseYCCKColors) throws IOException
      Throws:
      IOException
    • readRGBImageFromCMYK

      public static BufferedImage readRGBImageFromCMYK(InputStream in, ICC_Profile cmykProfile) throws IOException
      Reads a CMYK JPEG image from the provided InputStream, converting the colors to RGB using the provided CMYK ICC_Profile. The image data must be in the CMYK color space.

      Use this method, if you have already determined that the input stream contains a CMYK JPEG image.

      Parameters:
      in - An InputStream, preferably an ImageInputStream, in the JPEG File Interchange Format (JFIF).
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage containing the decoded image converted into the RGB color space.
      Throws:
      IOException
    • readRGBAImageFromRGBA

      public static BufferedImage readRGBAImageFromRGBA(InputStream in, ICC_Profile rgbaProfile) throws IOException
      Reads a RGBA JPEG image from the provided InputStream, converting the colors to RGBA using the provided RGBA ICC_Profile. The image data must be in the RGBA color space.

      Use this method, if you have already determined that the input stream contains a RGBA JPEG image.

      Parameters:
      in - An InputStream, preferably an ImageInputStream, in the JPEG File Interchange Format (JFIF).
      rgbaProfile - An ICC_Profile for conversion from the RGBA color space to the RGBA color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage containing the decoded image converted into the RGB color space.
      Throws:
      IOException
    • readRGBImageFromYCCK

      public static BufferedImage readRGBImageFromYCCK(InputStream in, ICC_Profile cmykProfile) throws IOException
      Reads a YCCK JPEG image from the provided InputStream, converting the colors to RGB using the provided CMYK ICC_Profile. The image data must be in the YCCK color space.

      Use this method, if you have already determined that the input stream contains a YCCK JPEG image.

      Parameters:
      in - An InputStream, preferably an ImageInputStream, in the JPEG File Interchange Format (JFIF).
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage containing the decoded image converted into the RGB color space.
      Throws:
      IOException
    • readRGBImageFromInvertedYCCK

      public static BufferedImage readRGBImageFromInvertedYCCK(InputStream in, ICC_Profile cmykProfile) throws IOException
      Reads an inverted-YCCK JPEG image from the provided InputStream, converting the colors to RGB using the provided CMYK ICC_Profile. The image data must be in the inverted-YCCK color space.

      Use this method, if you have already determined that the input stream contains an inverted-YCCK JPEG image.

      Parameters:
      in - An InputStream, preferably an ImageInputStream, in the JPEG File Interchange Format (JFIF).
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage containing the decoded image converted into the RGB color space.
      Throws:
      IOException
    • createRGBImageFromYCCK

      public static BufferedImage createRGBImageFromYCCK(Raster ycckRaster, ICC_Profile cmykProfile)
      Creates a buffered image from a raster in the YCCK color space, converting the colors to RGB using the provided CMYK ICC_Profile.
      Parameters:
      ycckRaster - A raster with (at least) 4 bands of samples.
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage in the RGB color space.
    • createRGBImageFromInvertedYCCK

      public static BufferedImage createRGBImageFromInvertedYCCK(Raster ycckRaster, ICC_Profile cmykProfile)
      Creates a buffered image from a raster in the inverted YCCK color space, converting the colors to RGB using the provided CMYK ICC_Profile.
      Parameters:
      ycckRaster - A raster with (at least) 4 bands of samples.
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage in the RGB color space.
    • createRGBImageFromCMYK

      public static BufferedImage createRGBImageFromCMYK(Raster cmykRaster, ICC_Profile cmykProfile)
      Creates a buffered image from a raster in the CMYK color space, converting the colors to RGB using the provided CMYK ICC_Profile. As seen from a comment made by 'phelps' at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4799903
      Parameters:
      cmykRaster - A raster with (at least) 4 bands of samples.
      cmykProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage in the RGB color space.
    • createRGBAImageFromRGBA

      public static BufferedImage createRGBAImageFromRGBA(Raster rgbaRaster, ICC_Profile rgbaProfile)
      Creates a buffered image from a raster in the RGBA color space, converting the colors to RGB using the provided CMYK ICC_Profile. As seen from a comment made by 'phelps' at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4799903
      Parameters:
      rgbaRaster - A raster with (at least) 4 bands of samples.
      rgbaProfile - An ICC_Profile for conversion from the CMYK color space to the RGB color space. If this parameter is null, a default profile is used.
      Returns:
      a BufferedImage in the RGB color space.
    • readImageFromYUVorGray

      public static BufferedImage readImageFromYUVorGray(ImageInputStream in) throws IOException
      Reads a JPEG image from the provided InputStream. The image data must be in the YUV or the Gray color space.

      Use this method, if you have already determined that the input stream contains a YUV or Gray JPEG image.

      Parameters:
      in - An InputStream, preferably an ImageInputStream, in the JPEG File Interchange Format (JFIF).
      Returns:
      a BufferedImage containing the decoded image converted into the RGB color space.
      Throws:
      IOException