/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.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.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.apache.xmlgraphics.image.codec.tiff;


Enumerates the possible compression values for TIFF images.
/** Enumerates the possible compression values for TIFF images. */
public enum CompressionValue {
No compression.
/** No compression. */
NONE(1),
Modified Huffman Compression (CCITT Group 3 1D facsimile compression).

Not currently supported.

/** * Modified Huffman Compression (CCITT Group 3 1D facsimile compression). * <p><b>Not currently supported.</b> */
GROUP3_1D(2),
CCITT T.4 bilevel compression (CCITT Group 3 2D facsimile compression).

Not currently supported.

/** * CCITT T.4 bilevel compression (CCITT Group 3 2D facsimile compression). * <p><b>Not currently supported.</b> */
GROUP3_2D(3),
CCITT T.6 bilevel compression (CCITT Group 4 facsimile compression).

Not currently supported.

/** * CCITT T.6 bilevel compression (CCITT Group 4 facsimile compression). * <p><b>Not currently supported.</b> */
GROUP4(4),
LZW compression.

Not supported.

/** LZW compression. <p><b>Not supported.</b> */
LZW(5),
Code for original JPEG-in-TIFF compression which has been depricated (for many good reasons) in favor of Tech Note 2 JPEG compression (compression scheme 7).

Not supported.

/** * Code for original JPEG-in-TIFF compression which has been depricated (for many good reasons) * in favor of Tech Note 2 JPEG compression (compression scheme 7). * <p><b>Not supported.</b> */
JPEG_BROKEN(6),
JPEG-in-TIFF compression.
/** <a href="ftp://ftp.sgi.com/graphics/tiff/TTN2.draft.txt"> JPEG-in-TIFF</a> compression. */
JPEG_TTN2(7),
Byte-oriented run-length encoding "PackBits" compression.
/** Byte-oriented run-length encoding "PackBits" compression. */
PACKBITS(32773),
DEFLATE lossless compression (also known as "Zip-in-TIFF").
/** * <a href="http://info.internet.isi.edu:80/in-notes/rfc/files/rfc1951.txt"> * DEFLATE</a> lossless compression (also known as "Zip-in-TIFF"). */
DEFLATE(32946); private final int compressionValue; private CompressionValue(int compressionValue) { this.compressionValue = compressionValue; } int getValue() { return compressionValue; }
Gets the compression value given the name of the compression type.
Params:
  • name – the compression name
Returns:the compression value
/** * Gets the compression value given the name of the compression type. * @param name the compression name * @return the compression value */
public static CompressionValue getValue(String name) { if (name == null) { return PACKBITS; } for (CompressionValue cv : CompressionValue.values()) { if (cv.toString().equalsIgnoreCase(name)) { return cv; } } throw new IllegalArgumentException("Unknown compression value: " + name); } }