xtiffcodec.java

来自「OpenMap是一个基于JavaBeansTM的开发工具包。利用OpenMap你」· Java 代码 · 共 97 行

JAVA
97
字号
package org.libtiff.jai.codecimpl;/* * XTIFF: eXtensible TIFF libraries for JAI. *  * The contents of this file are subject to the  JAVA ADVANCED IMAGING * SAMPLE INPUT-OUTPUT CODECS AND WIDGET HANDLING SOURCE CODE  License * Version 1.0 (the "License"); You may not use this file except in * compliance with the License. You may obtain a copy of the License at * http://www.sun.com/software/imaging/JAI/index.html * * Software distributed under the License is distributed on an "AS IS" * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See * the License for the specific language governing rights and limitations * under the License.  * * The Original Code is JAVA ADVANCED IMAGING SAMPLE INPUT-OUTPUT CODECS * AND WIDGET HANDLING SOURCE CODE.  * The Initial Developer of the Original Code is: Sun Microsystems, Inc.. * Portions created by: Niles Ritter  * are Copyright (C): Niles Ritter, GeoTIFF.org, 1999,2000. * All Rights Reserved. * Contributor(s): Niles Ritter */import java.awt.image.RenderedImage;import java.io.OutputStream;import com.sun.media.jai.codec.ImageCodec;import com.sun.media.jai.codec.ImageDecodeParam;import com.sun.media.jai.codec.ImageDecoder;import com.sun.media.jai.codec.ImageEncodeParam;import com.sun.media.jai.codec.ImageEncoder;import com.sun.media.jai.codec.SeekableStream;import com.sun.media.jai.codec.TIFFDecodeParam;import com.sun.media.jai.codec.TIFFEncodeParam;/** * TIFFCodec is declared final so we can't extend it */public class XTIFFCodec extends ImageCodec {    public XTIFFCodec() {}    static {        // All built-in codec support should be here        (new XTIFFUncompTileCodec()).register();        (new XTIFFLZWTileCodec()).register();        (new XTIFFPackTileCodec()).register();        (new XTIFFFaxTileCodec()).register();    }    public String getFormatName() {        return "tiff";    }    public Class getEncodeParamClass() {        return TIFFEncodeParam.class;    }    public Class getDecodeParamClass() {        return TIFFDecodeParam.class;    }    public boolean canEncodeImage(RenderedImage im, ImageEncodeParam param) {        return true;    }    protected ImageEncoder createImageEncoder(OutputStream dst,                                              ImageEncodeParam param) {        return new XTIFFImageEncoder(dst, param);    }    protected ImageDecoder createImageDecoder(SeekableStream src,                                              ImageDecodeParam param) {        return new XTIFFImageDecoder(src, param);    }    public int getNumHeaderBytes() {        return 4;    }    public boolean isFormatRecognized(byte[] header) {        if ((header[0] == 0x49) && (header[1] == 0x49) && (header[2] == 0x2a)                && (header[3] == 0x00)) {            return true;        }        if ((header[0] == 0x4d) && (header[1] == 0x4d) && (header[2] == 0x00)                && (header[3] == 0x2a)) {            return true;        }        return false;    }}

⌨️ 快捷键说明

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