Example usage for java.awt.color ICC_Profile icHdrRenderingIntent

List of usage examples for java.awt.color ICC_Profile icHdrRenderingIntent

Introduction

In this page you can find the example usage for java.awt.color ICC_Profile icHdrRenderingIntent.

Prototype

int icHdrRenderingIntent

To view the source code for java.awt.color ICC_Profile icHdrRenderingIntent.

Click Source Link

Document

ICC Profile Header Location: rendering intent.

Usage

From source file:Main.java

/**
 * Used in ICC_Transform class to check the rendering intent of the profile
 * @param profile - ICC profile//  w  ww .  j a  v a 2 s . c  o m
 * @return rendering intent
 */
public static int getRenderingIntent(ICC_Profile profile) {
    return getIntFromByteArray(profile.getData(ICC_Profile.icSigHead), // pf header
            ICC_Profile.icHdrRenderingIntent);
}

From source file:org.gmdev.pdftrick.utils.CustomExtraImgReader.java

/**
 * Convert image from Cmyk to Rgb profile
 * @param cmykRaster/*from   www  .  ja va 2  s  .c  om*/
 * @param cmykProfile
 * @return The BufferedImage obj
 * @throws IOException
 */
private static BufferedImage convertCmykToRgb(Raster cmykRaster, ICC_Profile cmykProfile) throws IOException {
    if (cmykProfile == null) {
        cmykProfile = ICC_Profile.getInstance(
                CustomExtraImgReader.class.getResourceAsStream(Consts.RESOURCEPATH + Consts.GENERICICCFILE));
    }
    if (cmykProfile.getProfileClass() != ICC_Profile.CLASS_DISPLAY) {
        byte[] profileData = cmykProfile.getData();
        if (profileData[ICC_Profile.icHdrRenderingIntent] == ICC_Profile.icPerceptual) {
            intToBigEndian(ICC_Profile.icSigDisplayClass, profileData, ICC_Profile.icHdrDeviceClass);
            cmykProfile = ICC_Profile.getInstance(profileData);
        }
    }

    ICC_ColorSpace cmykCS = new ICC_ColorSpace(cmykProfile);
    BufferedImage rgbImage = new BufferedImage(cmykRaster.getWidth(), cmykRaster.getHeight(),
            BufferedImage.TYPE_INT_RGB);
    WritableRaster rgbRaster = rgbImage.getRaster();
    ColorSpace rgbCS = rgbImage.getColorModel().getColorSpace();
    ColorConvertOp cmykToRgb = new ColorConvertOp(cmykCS, rgbCS, null);
    cmykToRgb.filter(cmykRaster, rgbRaster);
    return rgbImage;
}