Ответ 1
В Pillow есть две разные концепции, с похожими названиями:
"Режимы"
Они перечислены по адресу https://pillow.readthedocs.io/en/latest/handbook/concepts.html#modes.
По этим документам:
Режим изображения определяет тип и глубину пикселя в изображении.
Этот тип "режима" - это то, что предоставляется через атрибут Image
.mode
, может быть изменено с помощью .convert()
и может быть передано в методы, которые принимают параметр mode
. Они не такие, как "сырые режимы".
"Необработанные режимы"
Они используются внутренне необработанным декодером, который преобразует несжатые данные из файла изображения в формат, понятный объекту Image
PIL. В несколько раз больше "необработанных режимов", чем "режимов", и они передают информацию не только о типе (цветной или в оттенках серого) и битовой глубине пикселей в изображении, но также и об их расположении в файле. Например, необработанный режим RGB;L
задокументирован как означающий "24-битный истинный цвет, чередование строк (сначала все красные пиксели, затем все зеленые пиксели, наконец все синие пиксели)".
Как отмечено в документах, связанных выше (а также в старой документации PIL), список необработанных режимов можно найти в Unpack.c
. Вы найдете список в конце файла.
Unpack.c
из текущей основной ветки Pillow: https://github.com/python-pillow/Pillow/blob/master/src/libImaging/Unpack.c
Unpack.c
из окончательного выпуска PIL: http://svn.effbot.org/public/tags/pil-1.1.7/libImaging/Unpack.c