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

📄 imagewriter.java

📁 gcc的组建
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
  /**   * Write an image stream, including thumbnails and metadata to the   * output stream.  The output must have been set prior to this   * method being called.  Metadata associated with the stream may be   * supplied, or it can be left null.  IIOImage may contain raster   * data if this writer supports rasters, or it will contain a   * rendered image.  Thumbnails are resized if need be.  Image   * writing parameters may be specified to affect writing, or may be   * left null.   *   * @param streamMetadata metadata associated with this stream, or   * null   * @param image an IIOImage containing image data, metadata and   * thumbnails to be written   * @param param image writing parameters, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if image contains raster   * data but this writer does not support rasters   * @exception IllegalArgumentException if image is null   * @exception IOException if a write error occurs   */  public abstract void write (IIOMetadata streamMetadata, IIOImage image, ImageWriteParam param)    throws IOException;  /**   * Complete inserting an empty image in the output stream.   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if inserting empty   * images is not supported   * @exception IllegalArgumentException if a call to   * prepareInsertEmpty was not called previous to this method being   * called (a sequence of prepareInsertEmpty calls must be terminated   * by a call to endInsertEmpty)   * @exception IllegalArgumentException if prepareWriteEmpty was   * called before this method being called (without a terminating   * call to endWriteEmpty)   * @exception IllegalArgumentException if prepareReplacePixels was   * called before this method being called (without a terminating   * call to endReplacePixels)   * @exception IOException if a write error occurs   */  public void endInsertEmpty ()    throws IOException  {    if (!canInsertEmpty(0))      throw new UnsupportedOperationException();  }  /**   * Complete replacing pixels in an image in the output stream.   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing pixels is   * not supported by this writer   * @exception IllegalArgumentException if prepareReplacePixels was   * not called before this method being called   * @exception IOException if a write error occurs   */  public void endReplacePixels ()    throws IOException  {    if (!canReplacePixels(0))      throw new UnsupportedOperationException();  }  /**   * Complete writing an empty image to the image output stream.   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if writing empty images   * is not supported   * @exception IllegalArgumentException if a call to   * prepareWriteEmpty was not called previous to this method being   * called (a sequence of prepareWriteEmpty calls must be terminated   * by a call to endWriteEmpty)   * @exception IllegalArgumentException if prepareInsertEmpty was   * called before this method being called (without a terminating   * call to endInsertEmpty)   * @exception IllegalArgumentException if prepareReplacePixels was   * called before this method being called (without a terminating   * call to endReplacePixels)   * @exception IOException if a write error occurs   */  public void endWriteEmpty ()    throws IOException  {    if (!canWriteEmpty())      throw new UnsupportedOperationException();  }  /**   * Complete writing a sequence of images to the output stream.  This   * method may patch header data and write out footer data.   *   * @exception IllegalStateException if output is null   * @exception IllegalStateException if prepareWriteSequence has not   * been called   * @exception UnsupportedOperationException if writing a sequence of   * images is not supported   * @exception IOException if a write error occurs   */  public void endWriteSequence ()    throws IOException  {    checkOutputSet();    if (!canWriteSequence())      throw new UnsupportedOperationException();  }  /**   * Start inserting an empty image in the image output stream.  All   * indices after the specified index are incremented.  An index of   * -1 implies that the empty image should be appended to the end of   * the current image list.   *   * The insertion that this method call starts is not complete until   * endInsertEmpty is called.  prepareInsertEmpty cannot be called   * again until endInsertEmpty is called and calls to   * prepareWriteEmpty and prepareInsertEmpty may not be intersperced.   *   * @param imageIndex the image index   * @param imageType the image type specifier   * @param width the image width   * @param height the image height   * @param imageMetadata the image metadata, or null   * @param thumbnails a list of thumbnails, or null   * @param param image write parameters, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if inserting empty   * images is not supported   * @exception IndexOutOfBoundsException if imageIndex is less than   * -1 or greater than the last index in the current image list   * @exception IllegalStateException if a previous call to   * prepareInsertEmpty was made (without a terminating call to   * endInsertEmpty)   * @exception IllegalStateException if a previous call to   * prepareWriteEmpty was made (without a terminating call to   * endWriteEmpty)   * @exception IllegalArgumentException if imageType is null or   * thumbnails contain non-BufferedImage objects   * @exception IllegalArgumentException if either width or height is   * less than 1   * @exception IOException if a write error occurs   */  public void prepareInsertEmpty (int imageIndex, ImageTypeSpecifier imageType,                                  int width, int height,                                  IIOMetadata imageMetadata,                                  List thumbnails,                                  ImageWriteParam param)    throws IOException  {    if (!canInsertEmpty(imageIndex))      throw new UnsupportedOperationException();  }  /**   * Start the replacement of pixels within an image in the output   * stream.  Output pixels will be clipped to lie within region.   *   * @param imageIndex the index of the image in which pixels are   * being replaced   * @param region the rectangle to which to limit pixel replacement   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing pixels is   * not supported   * @exception IndexOutOfBoundsException if imageIndex is less than 0   * or greater than the last index in the current image list   * @exception IllegalStateException if a previous call to   * prepareReplacePixels was made (without a terminating call to   * endReplacePixels)   * @exception IllegalArgumentException if either region.width or   * region.height is less than 1, or if region is null   * @exception IOException if a write error occurs   */  public void prepareReplacePixels (int imageIndex, Rectangle region)    throws IOException  {    if (canReplacePixels(imageIndex))      throw new UnsupportedOperationException();  }  /**   * Start writing an empty image to the end of the image output   * stream.   *   * The writing that this method call starts is not complete until   * endWriteEmpty is called.  prepareWritetEmpty cannot be called   * again until endWriteEmpty is called and calls to   * prepareWriteEmpty and prepareInsertEmpty may not be intersperced.   *   * @param streamMetadata metadata associated with the stream, or null   * @param imageType the image type specifier   * @param width the image width   * @param height the image height   * @param imageMetadata the image metadata, or null   * @param thumbnails a list of thumbnails, or null   * @param param image write parameters, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if writing empty images   * is not supported   * @exception IndexOutOfBoundsException if imageIndex is less than   * -1 or greater than the last index in the current image list   * @exception IllegalStateException if a previous call to   * prepareInsertEmpty was made (without a terminating call to   * endInsertEmpty)   * @exception IllegalStateException if a previous call to   * prepareWriteEmpty was made (without a terminating call to   * endWriteEmpty)   * @exception IllegalArgumentException if imageType is null or   * thumbnails contain non-BufferedImage objects   * @exception IllegalArgumentException if either width or height is   * less than 1   * @exception IOException if a write error occurs   */  public void prepareWriteEmpty (IIOMetadata streamMetadata,                                 ImageTypeSpecifier imageType,                                 int width, int height,                                 IIOMetadata imageMetadata,                                 List thumbnails,                                 ImageWriteParam param)    throws IOException  {    if (!canWriteEmpty())      throw new UnsupportedOperationException();  }  /**   * Start the writing of a sequence of images.   *   * @param streamMetadata the stream metadata, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if writing sequences of   * images is not supported   * @exception IOException if a write error occurs   */  public void prepareWriteSequence (IIOMetadata streamMetadata)    throws IOException  {    checkOutputSet();    if (!canWriteSequence())      throw new UnsupportedOperationException();  }  /**   * Remove the image at the specified index from the output stream.   *   * @param imageIndex the frame index from which to remove the image   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if removing this image   * is not supported   * @exception IndexOutOfBoundsException if imageIndex is less than 0   * or greater than the last index in the current image list   * @exception IOException if a write error occurs   */  public void removeImage (int imageIndex)    throws IOException  {    if (!canRemoveImage(imageIndex))      throw new UnsupportedOperationException();  }  /**   * Replace the metadata associated with the image at the given   * index.   *   * @param imageIndex the index of the image whose metadata should be   * replaced   * @param imageMetadata the metadata, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing this   * image's metadata is not supported   * @exception IndexOutOfBoundsException if imageIndex is less than 0   * or greater than the last index in the current image list   * @exception IOException if a write error occurs   */  public void replaceImageMetadata (int imageIndex, IIOMetadata imageMetadata)    throws IOException  {    if (!canReplaceImageMetadata(imageIndex))      throw new UnsupportedOperationException();  }  /**   * Replace a region of an image in the output stream with a portion   * of the given rendered image.  The image data must be of the same   * type as that in the output stream.  The destination region is   * given by the image writing parameters and the source region is   * the one given to prepareReplacePixels.   *   * @param image the rendered image with which to overwrite the image   * region in the stream   * @param param the image writing parameters   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing pixels is   * not supported   * @exception IllegalStateException if prepareReplacePixels was not   * called before this method was called   * @exception IllegalArgumentException if image is null or if param   * is null or if the overlap of the source and destination regions   * contains no pixels or if the image types differ and no conversion   * is possible   * @exception IOException if a write error occurs   */  public void replacePixels (RenderedImage image,                             ImageWriteParam param)    throws IOException  {    if (!canReplacePixels(0))      throw new UnsupportedOperationException();  }  /**   * Replace a region of an image in the output stream with a portion   * of the given raster data.  The image data must be of the same   * type as that in the output stream.  The destination region is   * given by the image writing parameters and the source region is   * the one given to prepareReplacePixels.   *   * @param raster the raster data with which to overwrite the image   * region in the stream   * @param param the image writing parameters   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing pixels is   * not supported   * @exception IllegalStateException if prepareReplacePixels was not   * called before this method was called   * @exception UnsupportedOperationException if raster data is not   * supported   * @exception IllegalArgumentException if raster is null or if param   * is null or if the overlap of the source and destination regions   * contains no pixels or if the image types differ and no conversion   * is possible   * @exception IOException if a write error occurs   */  public void replacePixels (Raster raster, ImageWriteParam param)    throws IOException  {    if (!canReplacePixels(0))    throw new UnsupportedOperationException();  }  /**   * Replace the metadata associated with this image stream.   *   * @param streamMetadata the stream metadata, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if replacing the stream   * metadata is not supported   * @exception IOException if a write error occurs   */  public void replaceStreamMetadata (IIOMetadata streamMetadata)    throws IOException  {    if (!canReplaceStreamMetadata())      throw new UnsupportedOperationException();  }  /**   * Write a rendered image to the output stream.   *   * @param image a rendered image containing image data to be written   *   * @exception IllegalStateException if output is null   * @exception IllegalArgumentException if image is null   * @exception IOException if a write error occurs   */  public void write (RenderedImage image)    throws IOException  {    checkOutputSet();    write (null, new IIOImage(image, null, null), null);  }  /**   * Write a image data, metadata and thumbnails to the output stream.   *   * @param image image data, metadata and thumbnails to be written   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if image contains raster   * data but this writer does not support rasters   * @exception IllegalArgumentException if image is null   * @exception IOException if a write error occurs   */  public void write (IIOImage image)    throws IOException  {    checkOutputSet();    write (null, image, null);  }  /**   * Insert an image into the output stream.  Indices greater than the   * specified index are incremented accordingly.  Specifying an index   * of -1 causes the image to be appended at the end of the current   * image list.   *   * @param imageIndex the frame index at which to insert the image   * @param image the image data, metadata and thumbnails to be   * inserted   * @param the image write parameters, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if image insertion is   * not supported   * @exception IllegalArgumentException if image is null   * @exception IndexOutOfBoundsException if imageIndex is less than   * -1 or greater than the last index in the current image list   * @exception UnsupportedOperationException if image contains raster   * data but this writer does not support rasters   * @exception IOException if a write error occurs   */  public void writeInsert (int imageIndex, IIOImage image, ImageWriteParam param)    throws IOException  {    if (!canInsertImage(imageIndex))      throw new UnsupportedOperationException();  }  /**   * Write a sequence of images, including thumbnails and metadata, to   * the output stream.  The output must have been set prior to this   * method being called.  Metadata associated with the stream may be   * supplied, or it can be left null.  IIOImage may contain raster   * data if this writer supports rasters, or it will contain a   * rendered image.  Thumbnails are resized if need be.  Image   * writing parameters may be specified to affect writing, or may be   * left null.   *   * @param streamMetadata metadata associated with this stream, or   * null   * @param image an IIOImage containing image data, metadata and   * thumbnails to be written   * @param param image writing parameters, or null   *   * @exception IllegalStateException if output is null   * @exception UnsupportedOperationException if writing sequences of   * images is not supported   * @exception IllegalArgumentException if image is null   * @exception UnsupportedOperationException if image contains raster   * data but this writer does not support rasters   * @exception IOException if a write error occurs   */  public void writeToSequence (IIOImage image, ImageWriteParam param)    throws IOException  {    if (!canWriteSequence())      throw new UnsupportedOperationException();  }}

⌨️ 快捷键说明

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