src/share/classes/javax/imageio/plugins/bmp/BMPImageWriteParam.java

Print this page


   1 /*
   2  * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


  37  *
  38  * <p> This class allows for the specification of various parameters
  39  * while writing a BMP format image file.  By default, the data layout
  40  * is bottom-up, such that the pixels are stored in bottom-up order,
  41  * the first scanline being stored last.
  42  *
  43  * <p>The particular compression scheme to be used can be specified by using
  44  * the <code>setCompressionType()</code> method with the appropriate type
  45  * string.  The compression scheme specified will be honored if and only if it
  46  * is compatible with the type of image being written. If the specified
  47  * compression scheme is not compatible with the type of image being written
  48  * then the <code>IOException</code> will be thrown by the BMP image writer.
  49  * If the compression type is not set explicitly then <code>getCompressionType()</code>
  50  * will return <code>null</code>. In this case the BMP image writer will select
  51  * a compression type that supports encoding of the given image without loss
  52  * of the color resolution.
  53  * <p>The compression type strings and the image type(s) each supports are
  54  * listed in the following
  55  * table:
  56  *
  57  * <p><table border=1>
  58  * <caption><b>Compression Types</b></caption>
  59  * <tr><th>Type String</th> <th>Description</th>  <th>Image Types</th></tr>
  60  * <tr><td>BI_RGB</td>  <td>Uncompressed RLE</td> <td>{@literal <= } 8-bits/sample</td></tr>
  61  * <tr><td>BI_RLE8</td> <td>8-bit Run Length Encoding</td> <td>{@literal <=} 8-bits/sample</td></tr>
  62  * <tr><td>BI_RLE4</td> <td>4-bit Run Length Encoding</td> <td>{@literal <=} 4-bits/sample</td></tr>
  63  * <tr><td>BI_BITFIELDS</td> <td>Packed data</td> <td> 16 or 32 bits/sample</td></tr>
  64  * </table>
  65  */
  66 public class BMPImageWriteParam extends ImageWriteParam {
  67 
  68     private boolean topDown = false;
  69 
  70     /**
  71      * Constructs a <code>BMPImageWriteParam</code> set to use a given
  72      * <code>Locale</code> and with default values for all parameters.
  73      *
  74      * @param locale a <code>Locale</code> to be used to localize
  75      * compression type names and quality descriptions, or
  76      * <code>null</code>.
  77      */


   1 /*
   2  * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


  37  *
  38  * <p> This class allows for the specification of various parameters
  39  * while writing a BMP format image file.  By default, the data layout
  40  * is bottom-up, such that the pixels are stored in bottom-up order,
  41  * the first scanline being stored last.
  42  *
  43  * <p>The particular compression scheme to be used can be specified by using
  44  * the <code>setCompressionType()</code> method with the appropriate type
  45  * string.  The compression scheme specified will be honored if and only if it
  46  * is compatible with the type of image being written. If the specified
  47  * compression scheme is not compatible with the type of image being written
  48  * then the <code>IOException</code> will be thrown by the BMP image writer.
  49  * If the compression type is not set explicitly then <code>getCompressionType()</code>
  50  * will return <code>null</code>. In this case the BMP image writer will select
  51  * a compression type that supports encoding of the given image without loss
  52  * of the color resolution.
  53  * <p>The compression type strings and the image type(s) each supports are
  54  * listed in the following
  55  * table:
  56  *
  57  * <table border=1>
  58  * <caption><b>Compression Types</b></caption>
  59  * <tr><th>Type String</th> <th>Description</th>  <th>Image Types</th></tr>
  60  * <tr><td>BI_RGB</td>  <td>Uncompressed RLE</td> <td>{@literal <= } 8-bits/sample</td></tr>
  61  * <tr><td>BI_RLE8</td> <td>8-bit Run Length Encoding</td> <td>{@literal <=} 8-bits/sample</td></tr>
  62  * <tr><td>BI_RLE4</td> <td>4-bit Run Length Encoding</td> <td>{@literal <=} 4-bits/sample</td></tr>
  63  * <tr><td>BI_BITFIELDS</td> <td>Packed data</td> <td> 16 or 32 bits/sample</td></tr>
  64  * </table>
  65  */
  66 public class BMPImageWriteParam extends ImageWriteParam {
  67 
  68     private boolean topDown = false;
  69 
  70     /**
  71      * Constructs a <code>BMPImageWriteParam</code> set to use a given
  72      * <code>Locale</code> and with default values for all parameters.
  73      *
  74      * @param locale a <code>Locale</code> to be used to localize
  75      * compression type names and quality descriptions, or
  76      * <code>null</code>.
  77      */