Câu trả lời:
Có một crop()
phương pháp:
w, h = yourImage.size
yourImage.crop((0, 30, w, h-30)).save(...)
Parameters: box – The crop rectangle, as a (left, upper, right, lower)-tuple.
Bạn cần nhập PIL (Gối) cho việc này. Giả sử bạn có một hình ảnh có kích thước 1200, 1600. Chúng tôi sẽ cắt hình ảnh từ 400, 400 đến 800, 800
from PIL import Image
img = Image.open("ImageName.jpg")
area = (400, 400, 800, 800)
cropped_img = img.crop(area)
cropped_img.show()
(trái, trên, phải, dưới) có nghĩa là hai điểm,
với hình ảnh 800x600 pixel, điểm trên bên trái của hình ảnh là (0, 0), điểm dưới bên phải là (800, 600).
Vì vậy, để cắt một nửa hình ảnh:
from PIL import Image
img = Image.open("ImageName.jpg")
img_left_area = (0, 0, 400, 600)
img_right_area = (400, 0, 800, 600)
img_left = img.crop(img_left_area)
img_right = img.crop(img_right_area)
img_left.show()
img_right.show()
Thư viện hình ảnh Python sử dụng hệ thống tọa độ pixel của Cartesian, với (0,0) ở góc trên bên trái. Lưu ý rằng tọa độ đề cập đến các góc pixel ngụ ý; tâm của một pixel có địa chỉ là (0, 0) thực sự nằm ở (0,5, 0,5).
Các tọa độ thường được chuyển đến thư viện dưới dạng 2-tuples (x, y). Hình chữ nhật được biểu diễn dưới dạng 4 tuple, với góc trên bên trái được đưa ra đầu tiên. Ví dụ: một hình chữ nhật bao gồm tất cả hình ảnh 800x600 pixel được viết là (0, 0, 800, 600).