Пакет javax.imageio.metadata

Пакет API Java Image I/O, отвечающий за чтение и запись метаданных.

При чтении изображения его метаданные по потоку и по изображению доступны в качестве объекта IIOMetadata. Внутреннее устройство этого объекта специфично для плагина, который его создал. К его содержимому можно получить доступ в виде XML Document, который реализован как дерево объектов IIOMetadataNode.

При записи изображения его метаданные можно задать, определив или изменив объект IIOMetadata. Такой объект можно получить из объекта ImageWriter или ImageTranscoder (из пакета javax.imageio). После получения такого объекта его содержимое можно задать или изменить с помощью объекта Document, состоящего из IIOMetadataNode.

Формат документа можно необязательно описать с помощью объекта IIOMetadataFormat.

Формат метаданных, содержащихся в XML Document, определяется строкой, которая выступает в качестве корневого узла дерева объектов IIOMetadataNode. Эта строка содержит номер версии, например, "javax_imageio_jpeg_image_1.0". Читатели и писатели могут поддерживать несколько версий одного и того же базового формата, и API Image I/O имеет методы, позволяющие указать, какую версию использовать, передавая строку методу/конструктору, используемому для получения объекта IIOMetadata. В некоторых случаях более новая версия может не быть строго совместима с программой, написанной с ожиданиями более старой версии (см., например, раздел «Формат метаданных в формате Native» в разделе «Примечания к использованию метаданных JPEG» ниже).

Плагины могут выбрать поддержку стандартного (нейтрального для плагина) формата. Этот формат не обеспечивает бес потерь кодирование метаданных, но позволяет получить доступ к части метаданных общим образом.

Каждый из стандартных плагинов поддерживает так называемый «родной» формат метаданных, который кодирует его метаданные без потерь:

С:
1.4
Интерфейс Описание
IIOMetadataController

Интерфейс, который должны реализовывать объекты, которые могут определять параметры объекта IIOMetadata, либо создавая GUI для получения значений от пользователя, либо иным способом.

IIOMetadataFormat

Объект, описывающий структуру документов метаданных, возвращаемых из IIOMetadata.getAsTree и передаваемых в IIOMetadata.setFromTree и mergeTree.

Класс Описание
IIOMetadata

Абстрактный класс, который должен быть расширен объектами, представляющими метаданные (не относящиеся к изображению) изображения и потоков.

IIOMetadataFormatImpl

Конкретный класс, предоставляющий повторно используемую реализацию интерфейса IIOMetadataFormat.

IIOMetadataNode

Класс, представляющий узел в дереве метаданных, который реализует интерфейс org.w3c.dom.Element и дополнительно позволяет хранить нетекстовые объекты с помощью методов getUserObject и setUserObject.

Исключение Описание
IIOInvalidTreeException

Исключение IIOInvalidTreeException возникает, когда попытка объекта IIOMetadata разобрать дерево объектов IIOMetadataNode терпит неудачу.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/imageio/metadata/package-summary.html

Spec-Zone .ru
спецификации, руководства, описания, API