Bạn có thể hiển thị hình ảnh trong python không?

Trước khi chúng ta bắt đầu. Hướng dẫn Python này là một phần trong loạt bài hướng dẫn Gói Python của chúng tôi. Bạn cũng có thể tìm các chủ đề khác liên quan đến Tkinter

Tkinter dựa vào gói Python Pillow [còn gọi là PIL] để có khả năng xử lý hình ảnh. Sử dụng Gối, chức năng Tkinter hiển thị thông báo dựa trên văn bản thay vào đó có thể hiển thị thông báo dựa trên hình ảnh

Lưu ý rằng tùy thuộc vào mục đích của hình ảnh trong ứng dụng Tkinter, mã hóa khác nhau có thể được yêu cầu. Lý do cho điều này là vì hình ảnh trong các ứng dụng có thể khác nhau từ hình nền, đến hình ảnh được định vị đại diện cho các quy trình trong mã cơ bản, đến hình ảnh có thể nhấp hoặc biểu tượng thực hiện một hành động khi được nhấp.  

Cách hiển thị hình ảnh với tiện ích nhãn của Tkinter

Tiện ích nhãn của Tkinter có thể được sử dụng để hiển thị hình ảnh hoặc văn bản. Để hiển thị hình ảnh, yêu cầu sử dụng Image và ImageTk được nhập từ gói Gối Python [còn gọi là PIL]

Tiện ích nhãn có thể hiển thị Ảnh hoặc Ảnh bitmap .

  • Lớp PhotoImage được sử dụng để hiển thị biểu tượng thang độ xám hoặc màu thực, cũng như hình ảnh trong nhãn. Lưu ý rằng chỉ hỗ trợ các định dạng ảnh GIF và PGM/PPM. Để biết thông tin về cách bạn có thể làm việc với nhiều định dạng hình ảnh hơn, hãy xem phần Gối bên dưới.
  • Lớp BitmapImage được sử dụng để chỉ hiển thị hình ảnh đơn sắc [hai màu] trong nhãn.

Tkinter có ba Trình quản lý bố cục tích hợp có thể được sử dụng để định vị nhãn chứa hình ảnh trong khung. gói, lưới và địa điểm. Ví dụ: có thể đặt nhãn trong khung bằng cách sử dụng trình quản lý bố cục địa điểm tại tọa độ x,y, như minh họa trong ví dụ sau

Python đang được chú ý và thu hút hơn hầu hết các ngôn ngữ lập trình khác hiện nay. Nó đã trở nên phổ biến vì nhiều lý do. Nó là cả hướng đối tượng và thủ tục, nó có nguồn mở và có thể mở rộng, nó có thể di động và nó có hỗ trợ thư viện. Tuy nhiên, quan trọng nhất là Python viết mã đơn giản và rất dễ đọc

Để minh họa mức độ dễ dàng thực hiện một số việc trong Python, chúng ta sẽ xem nhanh cách làm việc với hình ảnh. Chúng tôi sẽ trình bày cách tải và hiển thị hình ảnh bằng Python, cách lấy thông tin hình ảnh bằng Python và cách chuyển đổi định dạng hình ảnh bằng Python

Tất nhiên, để sử dụng hình ảnh trong Python, bạn cần cài đặt Python. Ngoài ra, bạn sẽ muốn đảm bảo rằng bạn đã cài đặt mô-đun Gối. Việc cài đặt mô-đun Gối có thể được thực hiện bằng chỉ thị dòng lệnh đơn giản của

pip install pillow

Thao tác này sẽ cài đặt phiên bản cập nhật của Thư viện hình ảnh Python [PIL], cho phép bạn tải và sử dụng hình ảnh. Khi bạn đã cài đặt Gối, bạn đã sẵn sàng bắt đầu làm việc với hình ảnh

Tải và hiển thị hình ảnh trong Python

Việc viết một ứng dụng để hiển thị một hình ảnh bằng Python có thể được thực hiện chỉ với một vài dòng mã như trong Liệt kê 1

Liệt kê 1. hình ảnh. py. Đang tải một hình ảnh trong Python

from PIL import Image
image = Image.open['image.jpg']
image.show[]

Mã trong danh sách 1 bắt đầu bằng cách nhập thư viện Hình ảnh. Với thư viện được tải, bạn có thể tải một hình ảnh bằng cách gọi trong Image. open[] và gán giá trị trả về cho một biến. Với hình ảnh được tải, bạn đã sẵn sàng để hiển thị hình ảnh bằng cách gọi phương thức show[] trên biến hình ảnh của bạn. Nếu bạn chạy Liệt kê 1 trong một thư mục có chứa một hình ảnh có tên image. jpg, hình ảnh sẽ được hiển thị. Phần sau đây cho thấy hình ảnh đang được hiển thị trên hệ thống Windows

Hiển thị thuộc tính hình ảnh bằng Python

Ngoài việc hiển thị một hình ảnh, lớp Hình ảnh cung cấp một số thuộc tính và phương thức khác có thể được sử dụng với hình ảnh. Một số thuộc tính chính bao gồm

  • tên tập tin. Tên của tệp hình ảnh

  • định dạng. Các định dạng tệp như JPG, GIF

  • cách thức. Chế độ hình ảnh như RGB, RFBA, CMYK hoặc YCbCr

  • kích thước. Kích thước hình ảnh tính bằng pixel được hiển thị dưới dạng bộ chiều rộng, chiều cao

  • bề rộng. Chiều rộng của hình ảnh tính bằng pixel

  • Chiều cao. Chiều cao của hình ảnh tính bằng pixel

  • is_animated. Cho biết hình ảnh có nhiều hơn một khung hình hay không. Đúng nếu đúng, Sai nếu không. Thuộc tính này không được bao gồm trong tất cả các hình ảnh

Liệt kê 2 cho thấy việc tải một hình ảnh có tên “ani. gif” và hiển thị một loạt các thuộc tính của nó. Hình ảnh được bao gồm trong bài viết này ngay trước mã

Liệt kê 2. hình ảnh. py – Hiển thị thuộc tính hình ảnh bằng Python

from PIL import Image
 
image = Image.open['ani.gif']
 
print["Filename: ", image.filename]
print["Format: ", image.format]
print["Mode: ", image.mode]
print["Size: ", image.size]
print["Width: ", image.width]
print["Height: ", image.height]
print["Is Animated: ", [getattr[image, "is_animated", False]]]
 
image.close[]   # close image file

Điều đáng chú ý là ani. ảnh gif là một ảnh gif động, vì vậy khi danh sách này được thực thi, thông tin sau sẽ được hiển thị

tên tệp. ani. gif

Định dạng. GIF

Cách thức. P

['Kích thước. ‘, [500, 500]]

['Bề rộng. ‘, 500]

['Chiều cao. ‘, 500]

['Là hoạt hình. ', ĐÚNG VẬY]

Bạn có thể thấy rằng ảnh gif động có kích thước 500 x 500 pixel, nó thực sự là một ảnh GIF và nó là ảnh động. Ngoài các thuộc tính được hiển thị trong Liệt kê 2, có hai thuộc tính khác mà bạn có thể kiểm tra

Thuộc tính đầu tiên là bảng màu. Đây là bảng bảng màu nếu có kèm theo hình ảnh. Giá trị là Không có nếu không có bảng màu. Đối với ani. gif được hiển thị ở trên, thông tin bảng màu được hiển thị khi gọi thuộc tính là

Đối với hình ảnh jpg gốc được sử dụng trong Liệt kê 1, thông tin về bảng màu là Không có

Thuộc tính cuối cùng là thông tin. Thông tin là một đối tượng từ điển cho phép chia sẻ nhiều thông tin không phải hình ảnh

Lưu hình ảnh

Mở một hình ảnh đơn giản như gọi phương thức open[]. Lưu một hình ảnh trong Python thật đơn giản. Bạn chỉ cần gọi save[] và nhập tên bạn muốn sử dụng để lưu hình ảnh của mình. Phương pháp này sẽ lưu hình ảnh ở định dạng được xác định bởi phần mở rộng trên tên tệp bạn nhập. Liệt kê 3 mở hình ảnh. jpg được sử dụng trong Liệt kê 1 và lưu nó dưới dạng tệp gif bằng cách thay đổi tên tệp được chuyển thành save[]

Liệt kê 3. Lưu tệp bằng Python

from PIL import Image
 
image = Image.open['image.jpg']
image.save["NewImage.gif"]

Phương thức save[] có thể nhận đối tượng tệp thay vì tên tệp. Nó cũng có thể có hai tham số bổ sung được truyền chỉ định định dạng bạn muốn sử dụng để lưu tệp. Các định dạng bao gồm BMP, DIB, EPS, GIF, ICO, JPEG, PCX, PNG, TIFF và vô số định dạng khác. Định dạng sẽ được chỉ định làm tham số thứ hai như vậy

image.save["NewImage", format="BMP"]

Bản tóm tắt

Đây là một bài viết tương đối ngắn vì nó tương đối dễ làm việc với hình ảnh trong Python. Bạn đã học cách mở một hình ảnh trong Python. Bạn cũng đã xem cách lấy thông tin về hình ảnh và cách lưu một bản sao của hình ảnh ở định dạng khác. Trong bài viết tiếp theo, bạn sẽ thấy một số cách để thao tác với một hình ảnh sau khi bạn đã tải nó. Một lần nữa, với việc sử dụng Python, bạn sẽ thấy việc thao tác trở nên dễ dàng

Chủ Đề