39.11. imgfile – Поддержка файлов SGI imglib¶imgfile – Support for SGI imglib files
Устарело с версии 2.6: Модуль imgfile удалён в Python 3.
Модуль imgfile позволяет программам на Python получать доступ к файлам изображений SGI imglib (также известным как файлы .rgb). Модуль далёк от полной реализации, однако предоставляется, поскольку имеющейся функциональности в некоторых случаях достаточно. В настоящее время файлы цветовых карт не поддерживаются.
Модуль определяет следующие переменные и функции:
-
exception
imgfile.error¶ Это исключение возбуждается при любых ошибках, например, неподдерживаемый тип файла и т.д.
-
imgfile.getsizes(file)¶ Эта функция возвращает кортеж
(x, y, z), где x и y – размер изображения в пикселях, а z – количество байтов на пиксель. В настоящее время поддерживаются только 3-байтовые пиксели RGB и 1-байтовые пиксели в оттенках серого.
-
imgfile.read(file)¶ Эта функция читает и декодирует изображение из указанного файла и возвращает его в виде строки Python. Строка содержит либо 1-байтовые пиксели в оттенках серого, либо 4-байтовые пиксели RGBA. Первым в строке идёт левый нижний пиксель. Этот формат подходит, например, для передачи в
gl.lrectwrite().
-
imgfile.readscaled(file, x, y, filter[, blur])¶ Эта функция идентична read, но возвращает изображение, масштабированное до заданных размеров x и y. Если параметры filter и blur опущены, масштабирование выполняется простым удалением или дублированием пикселей, поэтому результат будет далёк от идеала, особенно для компьютерных изображений.
В качестве альтернативы можно указать фильтр для сглаживания изображения после масштабирования. Поддерживаются следующие формы фильтра:
'impulse','box','triangle','quadratic'и'gaussian'. Если фильтр указан, blur – необязательный параметр, задающий размытие фильтра. По умолчанию1.0.readscaled()не пытается сохранить правильное соотношение сторон, поэтому это ответственность пользователей.
-
imgfile.ttob(flag)¶ Эта функция устанавливает глобальный флаг, определяющий, читаются или записываются строки изображения снизу вверх (флаг равен нулю, совместимо с SGI GL) или сверху вниз (флаг равен единице, совместимо с X). По умолчанию – ноль.
-
imgfile.write(file, data, x, y, z)¶ Эта функция записывает данные RGB или в оттенках серого из data в файл изображения file. x и y задают размер изображения, z равен 1 для 1-байтовых изображений в оттенках серого или 3 для изображений RGB (которые хранятся как 4-байтовые значения, из которых используются только младшие три байта). Это форматы, возвращаемые
gl.lrectread().