import java.awt.Point;
import java.awt.Transparency;
import java.awt.color.ICC_ColorSpace;
import java.awt.color.ICC_Profile;
import java.awt.image.BufferedImage;
import java.awt.image.ColorConvertOp;
import java.awt.image.ColorModel;
import java.awt.image.ComponentColorModel;
import java.awt.image.DataBuffer;
import java.awt.image.Raster;
import java.awt.image.WritableRaster;
import java.io.IOException;
import java.net.URL;
public class PDFBOX5787
{
    public static void main(String[] args) throws IOException
    {
        ColorConvertOp colorConvertOp = new ColorConvertOp(null);
        URL url = new URL("https://issues.apache.org/jira/secure/attachment/13067493/CGATS001Compat-v2-micro.icc");
        ICC_Profile iccProfile = ICC_Profile.getInstance(url.openStream());
        ICC_ColorSpace icc_ColorSpace = new ICC_ColorSpace(iccProfile);

        WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, 1, 1,
                4, new Point(0, 0));

        ColorModel colorModel = new ComponentColorModel(icc_ColorSpace,
                false, false, Transparency.OPAQUE, raster.getDataBuffer().getDataType());

        BufferedImage src = new BufferedImage(colorModel, raster, false, null);
        BufferedImage dest = new BufferedImage(raster.getWidth(), raster.getHeight(),
                BufferedImage.TYPE_INT_RGB);
        colorConvertOp.filter(src, dest);
        System.out.println("ok");
    }
} 
