Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации
СОДЕРЖАНИЕ | ПРЕДЫДУЩИЙ | NEXT

3.4 ImageWriter Класс

Так же, как мы получили список ImageReaders для определенного формата, используя метод от ImageIO класс, мы можем получить список ImageWriters:
Iterator writers = ImageIO.getImageWritersByFormatName("png");
ImageWriter writer = (ImageWriter)writers.next();

Однажды ImageWriter был получен, его место назначения должно быть установлено в ImageOutputStream:
File f = new File("c:\images\myimage.png");
ImageOutputStream ios = ImageIO.createImageOutputStream(f);
writer.setOutput(ios);

Наконец, изображение может быть записано потоку вывода:
BufferedImage bi;
writer.write(bi);

3.4.1 Запись Повторных изображений

IIOImage класс является использованием, чтобы сохранить ссылки на изображение, одно или более изображений миниатюры, и метаданные (данные неизображения) связанный с изображением. Метаданные будут обсуждены ниже; пока, мы просто передадим null как значение для связанных с метаданными параметров.

ImageWriter класс содержит a write метод, который создает новый файл из IIOImage, и a writeInsert метод, который добавляет IIOImage к существующему файлу. Вызывая два в последовательности мультифайл образа может быть записан:

BufferedImage first_bi, second_bi;
IIOImage first_IIOImage = new IIOImage(first_bi, null, null);
IIOImage second_IIOImage = new IIOImage(second_bi, null, null);
writer.write(null, first_IIOImage, null);
if (writer.canInsertImage(1)) {
        writer.writeInsert(1, second_IIOImage, null);
} else {
        System.err.println("Writer can't append a second image!");
}



СОДЕРЖАНИЕ | ПРЕДЫДУЩИЙ | NEXT

Oracle и/или его филиалы Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами