/
githubmirror
/
panama-vector
Обзор
Документация
Войти
/
githubmirror
/
panama-vector
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/java.desktop/share/classes/javax/imageio/package-info.java
205 строк
8 KB
Nizar Benalla
8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP
18 сен 2024, 14:08
18 сен 2024, 14:08
45e438f
Код
Авторство
О чём код?
/* * Copyright (c) 2000, 2024, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ /** * The main package of the Java Image I/O API. * <p> * Many common image I/O operations may be performed using the static methods of * the {@code ImageIO} class. * <p> * This package contains the basic classes and interfaces for describing the * contents of image files, including metadata and thumbnails * ({@code IIOImage}); for controlling the image reading process * ({@code ImageReader}, {@code ImageReadParam}, and {@code ImageTypeSpecifier}) * and image writing process ({@code ImageWriter} and {@code ImageWriteParam}); * for performing transcoding between formats ({@code ImageTranscoder}), and for * reporting errors ({@code IIOException}). * <p> * All implementations of javax.imageio provide the following standard image * format plug-ins: * * <table class="striped"> * <caption>Standard image format plug-ins</caption> * <thead> * <tr> * <th scope="col">Image format * <th scope="col">Reading * <th scope="col">Writing * <th scope="col">Notes * <th scope="col">Metadata * </thead> * <tbody> * <!-- BMP plugin --> * <tr> * <th scope="row"> * <a href="https://msdn.microsoft.com/en-us/library/dd183391.aspx">BMP</a> * <td>yes * <td>yes * <td>none * <td><a href='metadata/doc-files/bmp_metadata.html'>BMP * metadata format</a> * <!-- GIF plugin --> * <tr> * <th scope="row"> * <a href="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">GIF</a> * <td>yes * <td>yes * <td><a href="#gif_plugin_notes">GIF plug-in notes</a> * <td><a href='metadata/doc-files/gif_metadata.html'>GIF * metadata format</a> * <!-- JPEG plugin --> * <tr> * <th scope="row"><a href="http://www.jpeg.org">JPEG</a> * <td>yes * <td>yes * <td>none * <td><a href='metadata/doc-files/jpeg_metadata.html'> * JPEG metadata format</a> * <!-- PNG plugin --> * <tr> * <th scope="row"><a href="http://www.libpng.org/pub/png/spec/">PNG</a> * <td>yes * <td>yes * <td>none * <td><a href='metadata/doc-files/png_metadata.html'>PNG * metadata format</a> * <!-- TIFF plugin --> * <tr> * <th scope="row"> * <a href="https://www.itu.int/itudoc/itu-t/com16/tiff-fx/docs/tiff6.pdf"> * TIFF</a> * <td>yes * <td>yes * <td> * <a href='metadata/doc-files/tiff_metadata.html#Reading'>TIFF plug-in * notes</a> * <td> * <a href='metadata/doc-files/tiff_metadata.html#StreamMetadata'>TIFF * metadata format</a> * <!-- WBMP plugin --> * <tr> * <th scope="row"> * <a href="https://www.wapforum.org/what/technical/SPEC-WAESpec-19990524.pdf"> * WBMP</a> * <td>yes * <td>yes * <td>none * <td><a href='metadata/doc-files/wbmp_metadata.html'> * WBMP metadata format</a> * </tbody> * </table> * * <h2> Standard Plug-in Notes</h2> * * <h3><a id="gif_plugin_notes">Standard plug-in for GIF image format</a></h3> * ImageIO provides {@code ImageReader} and {@code ImageWriter}plug-ins for the * <a href="http://www.w3.org/Graphics/GIF/spec-gif89a.txt"> Graphics * Interchange Format (GIF)</a> image format. These are the "standard" GIF * plug-ins, meaning those that are included in the JRE, as distinct from those * included in standard extensions, or 3rd party plug-ins. The following notes * and metadata specification apply to the standard plug-ins. * * <h3>Writing GIF images</h3> * The GIF image writer plug-in guarantees lossless writing for images which * meet the following requirements: * <ul> * <li>the number of bands is 1;</li> * <li>the number of bits per sample is not greater than 8;</li> * <li>the size of a color component is not greater than 8;</li> * </ul> * <p> * By default the GIF writer plug-in creates version "89a" images. This can be * changed to "87a" by explicitly setting the version in the stream metadata * (see * <a href="metadata/doc-files/gif_metadata.html#gif_stream_metadata_format"> * GIF Stream Metadata Format Specification</a>). * * <!-- animated images --> * <p> * The GIF writer plug-in supports the creation of animated GIF images through * the standard sequence writing methods defined in the {@code ImageWriter} * class. * * <!-- TODO: add example here --> * * <!-- color tables --> * <p> * A global color table is written to the output stream if one of the following * conditions is met: * <ul> * <li>stream metadata containing a GlobalColorTable element is supplied; * </li> * <li>a sequence is being written and image metadata containing a * LocalColorTable element is supplied for the first image in the sequence; * </li> * <li>image metadata is not supplied or does not contain a LocalColorTable * element.</li> * </ul> * <p> * In the first case the global color table in the stream metadata is used, in * the second the local color table in the image metadata is used, and in the * third a global color table is created from the ColorModel or SampleModel of * the (first) image. * <p> * A local color table is written to the output stream only if image metadata * containing a LocalColorTable element is supplied to the writer, or no image * metadata is supplied to the writer and the local color table which would be * generated from the image itself is not equal to the global color table. * <p> * A Graphic Control Extension block is written to the output stream only if * image metadata containing a GraphicControlExtension element is supplied to * the writer, or no image metadata is supplied and the local color table * generated from the image requires a transparent index. Application, Plain * Text, and Comment Extension blocks are written only if they are supplied to * the writer via image metadata. * * <!-- writing interlaced images --> * <p> * The writing of interlaced images can be controlled by the progressive mode of * the provided {@code ImageWriteParam} instance. If progressive mode is * {@code MODE_DISABLED} then a non-interlaced image will be written. If * progressive mode is {@code MODE_DEFAULT} then an interlaced image will be * written. If progressive mode is {@code MODE_COPY_FROM_METADATA}, then the * metadata setting is used (if it is provided, otherwise an interlaced image * will be written). * <p> * The GIF image writer plug-in supports setting output stream metadata from * metadata supplied to the writer in either the native GIF stream metadata * format * <a href="metadata/doc-files/gif_metadata.html#gif_stream_metadata_format"> * javax_imageio_gif_stream_1.0</a> or the standard metadata format * <a href="metadata/doc-files/standard_metadata.html">javax_imageio_1.0</a>, * and setting output image metadata from metadata supplied to the writer in * either the native GIF image metadata format * <a href="metadata/doc-files/gif_metadata.html#gif_image_metadata_format"> * javax_imageio_gif_image_1.0</a> or the standard metadata format * <a href="metadata/doc-files/standard_metadata.html">javax_imageio_1.0</a>. * The mapping of standard metadata format to the GIF native stream and image * metadata formats is given in the tables * <a href="metadata/doc-files/gif_metadata.html#mapping">here</a>. * * @since 1.4 */ package javax.imageio;