Разрезать изображение с помощью палочки

Я хочу извлечь несколько частей изображения с помощью Wand.

Я только что нашел функцию для обрезки (на месте) изображения img.crop(left, top, right, bottom), но обратите внимание на нарезку, как говорится в документе.

Примечание

Если вы хотите обрезать изображение, но не на месте, используйте оператор нарезки.


person Ghilas BELHADJ    schedule 27.04.2016    source источник


Ответы (1)


Взгляните на метод test_slice_crop в тесте. каталог для примеров.

with Image(filename='source.jpg') as img:
    with img[100:200, 100:200] as cropped:
        # The `cropped' is an instance if wand.image.Image,
        # and can be manipulated independently of `img' instance.
        pass

Изменить

Для завершения slice — это встроенная функция в Python для представления набор итераций (т.е. a[start:stop:step]). В wand это используется для матричные итерации

wand_instance[x:width, y:height]

Вот пример создания столбцов размером 10 пикселей...

from wand.image import Image

with Image(filename="rose:") as rose:
    x = 0
    chunk_size = 10
    while True:
        try:
            with rose[x:x+chunk_size, 0:rose.height] as chunk:
                chunk.save(filename='rose_{0}.png'.format(x))
                x += chunk_size
        except IndexError:
            break

нарезанное изображение

person emcconville    schedule 27.04.2016