⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 colorspace.java

📁 JAVA基本类源代码,大家可以学习学习!
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * @(#)ColorSpace.java	1.36 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. *//********************************************************************** ********************************************************************** ********************************************************************** *** COPYRIGHT (c) Eastman Kodak Company, 1997                      *** *** As  an unpublished  work pursuant to Title 17 of the United    *** *** States Code.  All rights reserved.                             *** ********************************************************************** ********************************************************************** **********************************************************************/package java.awt.color;import sun.awt.color.CMM;/** * This abstract class is used to serve as a color space tag to identify the * specific color space of a Color object or, via a ColorModel object, * of an Image, a BufferedImage, or a GraphicsDevice.  It contains * methods that transform colors in a specific color space to/from sRGB * and to/from a well-defined CIEXYZ color space. * <p> * For purposes of the methods in this class, colors are represented as * arrays of color components represented as floats in a normalized range * defined by each ColorSpace.  For many ColorSpaces (e.g. sRGB), this * range is 0.0 to 1.0.  However, some ColorSpaces have components whose * values have a different range.  Methods are provided to inquire per * component minimum and maximum normalized values. * <p> * Several variables are defined for purposes of referring to color * space types (e.g. TYPE_RGB, TYPE_XYZ, etc.) and to refer to specific * color spaces (e.g. CS_sRGB and CS_CIEXYZ). * sRGB is a proposed standard RGB color space.  For more information, * see <A href="http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html"> * http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html * </A>. * <p> * The purpose of the methods to transform to/from the well-defined * CIEXYZ color space is to support conversions between any two color * spaces at a reasonably high degree of accuracy.  It is expected that * particular implementations of subclasses of ColorSpace (e.g. * ICC_ColorSpace) will support high performance conversion based on * underlying platform color management systems. * <p> * The CS_CIEXYZ space used by the toCIEXYZ/fromCIEXYZ methods can be * described as follows:<pre>&nbsp;     CIEXYZ&nbsp;     viewing illuminance: 200 lux&nbsp;     viewing white point: CIE D50&nbsp;     media white point: "that of a perfectly reflecting diffuser" -- D50 &nbsp;     media black point: 0 lux or 0 Reflectance&nbsp;     flare: 1 percent&nbsp;     surround: 20percent of the media white point&nbsp;     media description: reflection print (i.e., RLAB, Hunt viewing media)&nbsp;     note: For developers creating an ICC profile for this conversion&nbsp;           space, the following is applicable.  Use a simple Von Kries&nbsp;           white point adaptation folded into the 3X3 matrix parameters&nbsp;           and fold the flare and surround effects into the three&nbsp;           one-dimensional lookup tables (assuming one uses the minimal&nbsp;           model for monitors).</pre> * * <p> * @see ICC_ColorSpace * @version 10 Feb 1997 */public abstract class ColorSpace implements java.io.Serializable {    static final long serialVersionUID = -409452704308689724L;    private int type;    private int numComponents;    // Cache of singletons for the predefined color spaces.    private static ColorSpace sRGBspace;    private static ColorSpace XYZspace;    private static ColorSpace PYCCspace;    private static ColorSpace GRAYspace;    private static ColorSpace LINEAR_RGBspace;        /**     * Any of the family of XYZ color spaces.     */    public static final int TYPE_XYZ = 0;    /**     * Any of the family of Lab color spaces.     */    public static final int TYPE_Lab = 1;    /**     * Any of the family of Luv color spaces.     */    public static final int TYPE_Luv = 2;    /**     * Any of the family of YCbCr color spaces.     */    public static final int TYPE_YCbCr = 3;    /**     * Any of the family of Yxy color spaces.     */    public static final int TYPE_Yxy = 4;    /**     * Any of the family of RGB color spaces.     */    public static final int TYPE_RGB = 5;    /**     * Any of the family of GRAY color spaces.     */    public static final int TYPE_GRAY = 6;    /**     * Any of the family of HSV color spaces.     */    public static final int TYPE_HSV = 7;    /**     * Any of the family of HLS color spaces.     */    public static final int TYPE_HLS = 8;    /**     * Any of the family of CMYK color spaces.     */    public static final int TYPE_CMYK = 9;    /**     * Any of the family of CMY color spaces.     */    public static final int TYPE_CMY = 11;    /**     * Generic 2 component color spaces.     */    public static final int TYPE_2CLR = 12;    /**     * Generic 3 component color spaces.     */    public static final int TYPE_3CLR = 13;    /**     * Generic 4 component color spaces.     */    public static final int TYPE_4CLR = 14;    /**     * Generic 5 component color spaces.     */    public static final int TYPE_5CLR = 15;    /**     * Generic 6 component color spaces.     */    public static final int TYPE_6CLR = 16;    /**     * Generic 7 component color spaces.     */    public static final int TYPE_7CLR = 17;    /**     * Generic 8 component color spaces.     */    public static final int TYPE_8CLR = 18;    /**     * Generic 9 component color spaces.     */    public static final int TYPE_9CLR = 19;    /**     * Generic 10 component color spaces.     */    public static final int TYPE_ACLR = 20;    /**     * Generic 11 component color spaces.     */    public static final int TYPE_BCLR = 21;    /**     * Generic 12 component color spaces.     */    public static final int TYPE_CCLR = 22;    /**     * Generic 13 component color spaces.     */    public static final int TYPE_DCLR = 23;    /**     * Generic 14 component color spaces.     */    public static final int TYPE_ECLR = 24;    /**     * Generic 15 component color spaces.     */    public static final int TYPE_FCLR = 25;    /**     * The sRGB color space defined at     * <A href="http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html">     * http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html     * </A>.     */    public static final int CS_sRGB = 1000;    /**     * A built-in linear RGB color space.  This space is based on the     * same RGB primaries as CS_sRGB, but has a linear tone reproduction curve.     */    public static final int CS_LINEAR_RGB = 1004;    /**     * The CIEXYZ conversion color space defined above.     */    public static final int CS_CIEXYZ = 1001;    /**     * The Photo YCC conversion color space.     */    public static final int CS_PYCC = 1002;    /**     * The built-in linear gray scale color space.     */    public static final int CS_GRAY = 1003;    /**     * Constructs a ColorSpace object given a color space type     * and the number of components.     * @param type One of the <CODE>ColorSpace</CODE> type constants.     * @param numcomponents The number of components in the color space.     */    protected ColorSpace (int type, int numcomponents) {        this.type = type;        this.numComponents = numcomponents;    }    /**     * Returns a ColorSpace representing one of the specific     * predefined color spaces.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -