imformats

Управляйте реестром формата файла изображения

Синтаксис

imformats
formatStruct = imformats(fmt)
registry = imformats
registry = imformats(formatStruct)
registry = imformats('add',formatStruct)
registry = imformats('remove',fmt)
registry = imformats('update',fmt,formatStruct)
registry = imformats('factory')

Описание

imformats отображает таблицу информации, перечисляющей все значения в реестре формата файла MATLAB®. Этот реестр определяет, какие форматы файлов imfinfo, imread и imwrite функционируют поддержка.

пример

formatStruct = imformats(fmt) ищет известные форматы в реестре формата файла MATLAB для формата, сопоставленного с расширением файла, заданным fmt. Если найдено, formatStruct является структурой, содержащей характеристики и имена функций, сопоставленные с форматом. В противном случае formatStruct является пустой структурой.

registry = imformats возвращает массив структур, registry, содержа все значения в реестре формата файла MATLAB.

registry = imformats(formatStruct) устанавливает реестр формата файла MATLAB для текущего сеанса работы с MATLAB к значениям в formatStruct. Выходная структура, registry, содержит новые настройки реестра. Используйте этот синтаксис, чтобы заменить поддержку формата файла изображения.

Неправильное использование imformats, чтобы задать значения в реестре формата файла MATLAB может привести к неспособности загрузить любые файлы изображений. Чтобы возвратить реестр формата файла в рабочее состояние, используйте imformats с входным параметром 'factory'.

пример

registry = imformats('add',formatStruct) добавляет значения в formatStruct к реестру формата файла. Используйте этот синтаксис, чтобы добавить поддержку формата файла изображения.

пример

registry = imformats('remove',fmt) удаляет формат с расширением, заданным fmt из реестра формата файла. Используйте этот синтаксис, чтобы удалить поддержку формата файла изображения.

пример

registry = imformats('update',fmt,formatStruct) изменяет значения реестра формата для формата с дополнительным fmt, чтобы задать значения formatStruct.

registry = imformats('factory') сбрасывает реестр формата файла MATLAB к значениям реестра формата по умолчанию. Это удаляет любые заданные пользователями настройки.

Примеры

свернуть все

Определите, находится ли формат файла, сопоставленный с расширением файла .bmp, в реестре формата файла изображения.

formatStruct = imformats('bmp')
formatStruct = struct with fields:
            ext: {'bmp'}
            isa: @isbmp
           info: @imbmpinfo
           read: @readbmp
          write: @writebmp
          alpha: 0
    description: 'Windows Bitmap'

formatStruct является непустой структурой, таким образом, формат файла BMP находится в реестре.

Добавьте гипотетический формат файла, ABC, к реестру формата файла изображения. Обновите, и затем удалите формат.

Создайте структуру с семью полями, задав значения для нового формата.

formatStruct = struct('ext','abc','isa',@isabc,...
    'info',@abcinfo,'read',@readabc,'write','',...
    'alpha',0,'description','My ABC Format')
formatStruct = struct with fields:
            ext: 'abc'
            isa: @isabc
           info: @abcinfo
           read: @readabc
          write: ''
          alpha: 0
    description: 'My ABC Format'

formatStruct является структурой 1 на 1 с семью полями. В этом примере поле write пусто.

Добавьте новый формат к реестру формата файла.

registry = imformats('add',formatStruct);

Переопределите формат, сопоставленный с расширением, abc, путем добавления значения для поля write. Затем обновите значение реестра для формата.

formatStruct2 = struct('ext','abc','isa',@isabc,...
    'info',@abcinfo,'read',@readabc,'write',@writeabc,...
    'alpha',0,'description','My ABC Format');

registry = imformats('update','abc',formatStruct2);

Удалите формат с расширением, abc, из реестра формата файла.

registry = imformats('remove','abc');

Входные параметры

свернуть все

Значения реестра формата файла, заданные как массив структур со следующими 7 полями.

Поле

Описание

Значение

ext

Расширения файла, которые допустимы для этого формата.

Массив ячеек из символьных векторов или массив строк

isa

Имя функции, которое определяет, имеет ли файл определенный формат.

Вектор символа или скаляр строки или указатель на функцию

информация

Имя функции, которое считывает информации о файле.

Вектор символа или скаляр строки или указатель на функцию

чтение

Имя функции, которое читает данные изображения в файле.

Вектор символа или скаляр строки или указатель на функцию

запись

Имя функции, которое пишет данные MATLAB в файл.

Вектор символа или скаляр строки или указатель на функцию

\alpha

Присутствие или отсутствие альфа-канала.

1, если формат имеет альфа-канал; в противном случае это - 0.

описание

Текстовое описание формата файла.

Вектор символа или скаляр строки

Значения для isa, info, read и полей write должны быть или функциями на пути поиска файлов MATLAB или указателями на функцию.

Типы данных: struct

Расширение формата файла, заданное как вектор символа или скаляр строки.

Пример: 'jpg'

Типы данных: char

Выходные аргументы

свернуть все

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

Поле

Описание

Значение

ext

Расширения файла, которые допустимы для этого формата.

Массив ячеек из символьных векторов

isa

Имя функции, которое определяет, имеет ли файл определенный формат.

Вектор символа или указатель на функцию

информация

Имя функции, которое считывает информации о файле.

Вектор символа или указатель на функцию

чтение

Имя функции, которое читает данные изображения в файле.

Вектор символа или указатель на функцию

запись

Имя функции, которое пишет данные MATLAB в файл.

Вектор символа или указатель на функцию

\alpha

Присутствие или отсутствие альфа-канала.

1, если формат имеет альфа-канал; в противном случае это - 0.

описание

Текстовое описание формата файла.

Символьный вектор

Примечание

Используйте imread, imwrite, и функции imfinfo, чтобы читать, запишите или получите информацию о файле изображения, когда формат файла будет в реестре формата. Непосредственно не вызывайте функции, возвращенные в полях массива структур registry.

Советы

  • Изменения в реестре формата не сохраняются между сеансами работы с MATLAB. Чтобы иметь формат, всегда доступный, когда вы запустите MATLAB, добавьте соответствующую команду imformats к файлу запуска MATLAB, startup.m, расположенному в $MATLAB/toolbox/local в системах UNIX® или $MATLAB\toolbox\local в системах Windows®.

Представлено до R2006a

Была ли эта тема полезной?