@jikrdev

Как с помощью pillow обрезать изображение, чтобы оно обрезалось адоптируясь под размер фотографии?

Здравствуйте, хочу сделать бота на Python для VK, есть готовый на Node.JS.
Суть в том, что даётся например фотография 1000x1000 и её нужно обрезать до высоты 700 и ширины 1000.

Код на Node.JS (canvas):
const canvas = createCanvas(1000, 700)
let ctx = canvas.getContext("2d");
const image = await loadImage(imgUrl);
ctx.drawImage(image, 0, (700-1000/image.width*image.height)/2, 1000, 1000/image.width*image.height);


Делаю то же самое на Python (Pillow):
image = Image.open(photo_name)
image_crop = image.crop((0, (700-1000/image.width*image.height)/2, 1000, 1000/image.width*image.height))
image_crop.save(photo_name)


И получаю кривое изображение. Помогите, пожалуйста.
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ответы на вопрос 1
@djigit0s
Вам надо именно обрезать изображение или же изменить размер до нужных? Если я не ошибаюсь в pillow параметры crop идут в таком порядке (x, y, x1, y1), где x1 = x + new_img_width и y1 = y + new_img_height.
Не совсем понятна формула (700-1000/image.width*image.height)/2 при значениях widht = 1000 и height = 1000 значение формулы будет отрицательное число.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы