• Официальный сайт SDK
  • Сайт с примерами кода

Класс Image

Экземпляр класса Image представляет собой содержимое одного изображения, над которым возможно проведение операций по его преобразованию. Методы экземпляра задают необходимые для проведения операции, которые затем могут быть выполнены с использованием вызова метода execute_transforms().

Класс Image реализован в модуле google.appengine.api.images.

Введение

Класс Image используется для инкапсуляции данных изображения и проведения над ним операций по его обработке.

После того, как определены одна или несколько операций обработки на данными объекта, они могут быть запущены вызовом метода execute_transforms().

Примечание: Все операции выполняются в той же последовательности, в какой они задавались, и при выполнении метода execute_transforms() могут быть вызваны только один раз.

Конструктор

class Image(image_data)

Содержит изображение, подлежащее трансформированию.

Параметры:

image_data
Двоичные данные изображения, представляющие собой массив байт (str). Изображение может содержаться в форматах JPEG, PNG, GIF (включая анимированный), BMP, TIFF или ICO.

Методы экземпляра

Экземпляр класса Image имеет следующие методы:

resize(width=0, height=0)

Выполняет изменение размера изображения, масштабируя его в большую или меньшую сторону, в зависимости от переданных параметров ширины и высоты.

Параметры:

width
Требуемая ширина, указывается в пикселах. Параметр должен быть типа int или long.
height
Требуемая высота, указывается в пикселах. Параметр должен быть типа int или long.
crop(left_x, top_y, right_x, bottom_y)

Выполняет обрезку изображения с использованием заданных координат. Метод возвращает преобразованное изображение в том же самом формате.

Левый, верхний, правый и нижний размер ограничительной рамки задается как пропорции к размерам изображения. Координаты ограничительной рамки определяются как left_x * ширина, top_y * высота, right_x * ширина и bottom_y * высота. Это позволяет вам указывать параметры ограничительной рамки независимо от окончательных размеров изображения, которые могут поменяться при выполнении операции изменения размеров.

Параметры:

left_x
Левая граница ограничительной рамки, задается как пропорция ширины изображения, определяемая значением типа float в интервале от 0.0 до 1.0 (включительно).
top_y
Верхняя граница ограничительной рамки, задается как пропорция высоты изображения, определяемая значением типа float в интервале от 0.0 до 1.0 (включительно).
right_x
Правая граница ограничительной рамки, задается как пропорция ширины изображения, определяемая значением типа float в интервале от 0.0 до 1.0 (включительно).
bottom_y
Нижняя граница ограничительной рамки, задается как пропорция высоты изображения, определяемая значением типа float в интервале от 0.0 до 1.0 (включительно).
rotate(degrees)

Поворачивает изображение. Требуемый угол вращения должен быть кратен 90 градусам.

Поворот осуществляется по часовой стрелке. Например, параметр 90 градусов поворачивает изображение таким образом, что его верхняя сторона становится правой.

Параметры:

degrees
Требуемый угол вращения, задаваемый в градусах и кратный 90-та. Параметр должен быть типа int или long.
horizontal_flip()

Переворачивает изображение по горизонтали. Его левая сторона становится правой и наоборот.

vertical_flip()

Переворачивает изображение по вертикали. Его верхняя сторона становится нижней и наоборот.

im_feeling_lucky()

Преобразует уровни контрастности и цвета изображения по алгоритму для улучшения фотографий. Является функцией, подобной возможности "I'm Feeling Lucky" продукта Google Picasa. Метод возвращает преобразованное изображение в том же самом формате.

Примечание: В локальном пакете разработки SDK метод im_feeling_lucky() является заглушкой и не выполняет никаких функций, так как не имеет эквивалента в библиотеке PIL.

execute_transforms(output_encoding=images.PNG)

Выполняет все преобразования над изображением заданные другими методами экземпляра класса и возвращает результат.

Параметры:

output_encoding
Заданный формат выходного изображения. Может быть либо images.PNG, либо images.JPEG. По умолчанию - images.PNG.

Возвращаемое значение является результирующим изображением в формате массива байт.