Пакет javax.imageio.metadata
При чтении изображения его метаданные потока и изображения становятся доступными в виде объекта 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. В некоторых случаях более новая версия может быть несовместима с программой, рассчитанной на более старую версию (пример см. в разделе «Собственный формат метаданных» примечаний по использованию метаданных JPEG ниже).
Плагины могут поддерживать стандартный (независимый от плагина) формат . Этот формат не обеспечивает кодирование метаданных без потерь, но позволяет получать доступ к части метаданных универсальным способом.
Каждый из стандартных плагинов поддерживает так называемый «собственный» формат метаданных, обеспечивающий кодирование метаданных без потерь:
- С версии:
- 1.4
| Класс | Описание |
|---|---|
| IIOInvalidTreeException | Исключение IIOInvalidTreeException выбрасывается, если попытка объекта IIOMetadata разобрать дерево IIOMetadataNode завершается неудачей. |
| IIOMetadata | Абстрактный класс, который должны расширять объекты, представляющие метаданные (данные, не являющиеся изображением), связанные с изображениями и потоками. |
| IIOMetadataController | Интерфейс, который должны реализовывать объекты, способные определять параметры объекта IIOMetadata — например, отображая графический интерфейс для получения значений от пользователя или используя другие средства. |
| IIOMetadataFormat | Объект, описывающий структуру документов метаданных, возвращаемых из IIOMetadata.getAsTree и передаваемых в IIOMetadata.setFromTree и mergeTree. |
| IIOMetadataFormatImpl | Конкретный класс, предоставляющий повторно используемую реализацию интерфейса IIOMetadataFormat. |
| IIOMetadataNode | Класс, представляющий узел в дереве метаданных, реализующий интерфейс org.w3c.dom.Element и дополнительно позволяющий хранить нетекстовые объекты с помощью методов getUserObject и setUserObject. |
© 1993, 2025, 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/25/docs/api/java.desktop/javax/imageio/metadata/package-summary.html