1 /* Copyright (C) 2005-2011 Fabio Riccardi */ 2 3 /* 4 * $RCSfile: LCColorConvertCRIF.java,v $ 5 * 6 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved. 7 * 8 * Use is subject to license terms. 9 * 10 * $Revision: 1.2 $ 11 * $Date: 2005/03/28 17:45:12 $ 12 * $State: Exp $ 13 */ 14 15 package com.lightcrafts.jai.opimage; 16 17 import java.awt.RenderingHints; 18 import java.awt.image.ColorModel; 19 import java.awt.image.RenderedImage; 20 import java.awt.image.renderable.ParameterBlock; 21 import com.lightcrafts.mediax.jai.CRIFImpl; 22 import com.lightcrafts.mediax.jai.ImageLayout; 23 import com.lightcrafts.media.jai.opimage.RIFUtil; 24 import com.lightcrafts.jai.operator.LCColorConvertDescriptor; 25 26 27 /** 28 * A <code>CRIF</code> supporting the "ColorConvert" operation in the rendered 29 * and renderable image layers. 30 * 31 * @see com.lightcrafts.mediax.jai.operator.ColorConvertDescriptor 32 * @see com.lightcrafts.media.jai.opimage.ColorConvertOpImage 33 * 34 * @since EA4 35 * 36 */ 37 public class LCColorConvertCRIF extends CRIFImpl { 38 39 /** Constructor. */ LCColorConvertCRIF()40 public LCColorConvertCRIF() { 41 super("LCColorConvert"); 42 } 43 44 /** 45 * Creates a new instance of <code>ColorConvertOpImage</code> in the 46 * rendered layer. 47 * 48 * @param args The source image and the destination ColorModel. 49 * @param renderHints Optionally contains destination image layout. 50 */ create(ParameterBlock args, RenderingHints renderHints)51 public RenderedImage create(ParameterBlock args, 52 RenderingHints renderHints) { 53 // Get ImageLayout from renderHints if any. 54 ImageLayout layout = RIFUtil.getImageLayoutHint(renderHints); 55 56 57 return new LCColorConvertOpImage(args.getRenderedSource(0), 58 renderHints, 59 layout, 60 (ColorModel) args.getObjectParameter(0), 61 (LCColorConvertDescriptor.RenderingIntent) args.getObjectParameter(1)); 62 } 63 } 64