MonkeyImage

Một lớp monkeyrunner để lưu ảnh chụp màn hình của thiết bị hoặc trình mô phỏng. Hình ảnh sẽ được sao chép từ vùng đệm màn hình từ quá trình chụp màn hình. Các phương thức của đối tượng này cho phép bạn chuyển đổi hình ảnh sang nhiều định dạng lưu trữ khác nhau, lưu hình ảnh vào một tệp, sao chép các phần của hình ảnh và so sánh đối tượng này với các đối tượng MonkeyImage khác.

Bạn không cần khởi tạo thực thể mới cho đối tượng MonkeyImage. Thay vào đó, hãy sử dụng phương thức MonkeyDevice.takeSnapshot() để tạo một thực thể mới từ ảnh chụp màn hình. Ví dụ: hãy sử dụng

newimage = MonkeyDevice.takeSnapshot()

Tóm tắt

Phương thức
string convertToBytes (string format)
Chuyển đổi hình ảnh hiện tại sang một định dạng cụ thể và trả về dưới dạng một chuỗi mà sau đó bạn có thể truy cập ở dạng dữ liệu kiểu lặp gồm các byte nhị phân.
tuple getRawPixel (integer x, integer y)
Trả về một giá trị pixel tại vị trí hình ảnh (x, y), dưới dạng một bộ dữ liệu số nguyên, có dạng (a,r,g,b) ,
integer getRawPixelInt (integer x, integer y)
Trả về một giá trị pixel tại vị trí hình ảnh (x,y), dưới dạng một số nguyên 32 bit.
MonkeyImage getSubImage (tuple rect)
Khởi tạo một đối tượng MonkeyImage mới từ vùng chọn chữ nhật cho hình ảnh hiện tại.
boolean sameAs (MonkeyImage other, float percent)
So sánh đối tượng MonkeyImage này với một đối tượng khác và trả về kết quả so sánh. Đối số percent chỉ định mức chênh lệch theo tỷ lệ mà hai hình ảnh được coi là "bằng" nhau.
void writeToFile (string path, string format)
Lưu hình ảnh hiện tại vào tệp do filename chỉ định, ở định dạng do format chỉ định.

Phương thức công khai

string convertToBytes ( string format)

Chuyển đổi hình ảnh hiện tại về một định dạng cụ thể và trả về hình ảnh đó dưới dạng một chuỗi mà sau đó bạn có thể truy cập dưới dạng dữ liệu kiểu lặp gồm các byte nhị phân.

Đối số
format Định dạng đầu ra mong muốn. Tất cả định dạng đầu ra raster phổ biến đều được hỗ trợ. Giá trị mặc định là "png" (Đồ hoạ mạng di động).

tuple getRawPixel (integer x, integer y)

Trả về một pixel tại vị trí hình ảnh (x, y), dưới dạng bộ ký tự số nguyên, có dạng (a,r,g,b) ,

Đối số
x Vị trí theo chiều ngang của pixel, tính từ giá trị 0 từ bên trái màn hình dựa trên hướng màn hình đang mở khi chụp ảnh màn hình.
y Vị trí theo chiều dọc của pixel, tính từ giá trị 0 từ bên trái màn hình dựa trên hướng màn hình đang mở khi chụp ảnh màn hình.
Giá trị trả về
  • Một bộ dữ liệu số nguyên thể hiện các giá trị pixel, hiển thị dưới dạng (a,r,g,b) với a là giá trị của kênh alpha (thể hiện độ đậm nhạt) và r, g, b tương ứng là giá trị của màu đỏ, lục và lam.

tuple getRawPixelInt (integer x, integer y)

Trả về một giá trị pixel tại vị trí hình ảnh (x,y) với x, y là số nguyên. Sử dụng phương pháp này để tiết kiệm dung lượng trên bộ nhớ.

Đối số
x Vị trí theo chiều ngang của pixel, tính từ giá trị 0 từ bên trái màn hình dựa trên hướng màn hình đang mở khi chụp ảnh màn hình.
y Vị trí theo chiều dọc của pixel, tính từ giá trị 0 từ bên trái màn hình dựa trên hướng màn hình đang mở khi chụp ảnh màn hình.
Giá trị trả về
  • Các giá trị a, r, g và b của pixel theo định dạng 8 bit kết hợp thành một số nguyên 32 bit, với a là 8 bit ở ngoài cùng bên trái, r ở ngoài cùng bên phải, v.v.

MonkeyImage getSubImage (tuple rect)

Tạo một đối tượng MonkeyImage mới từ vùng chọn hình chữ nhật cho hình ảnh hiện tại.

Đối số
rect Một bộ dữ liệu (x, y, w, h) xác định vùng chọn. x và y xác định vị trí tính từ gốc toạ độ 0 của pixel (nằm trên cùng góc trên bên trái của vùng chọn). w chỉ định chiều rộng của vùng và h chỉ định chiều cao của vùng, cả hai đơn vị này đều tính theo đơn vị pixel.

Hướng của hình ảnh giống với hướng màn hình tại thời điểm chụp ảnh màn hình.

Giá trị trả về
  • Một đối tượng MonkeyImage mới có chứa vùng chọn này.

boolean sameAs ( MonkeyImage otherImage, float percent )

So sánh đối tượng MonkeyImage này với một đối tượng khác và trả về kết quả so sánh. Đối số percent chỉ định mức chênh lệch theo tỷ lệ mà hai hình ảnh được coi là "bằng" nhau.

Đối số
other Một đối tượng MonkeyImage khác để so sánh với đối tượng này.
percent Một số thực có giá trị chạy từ 0.0 đến 1.0, xác định số phần trăm các pixels giá trị giống nhau cần thiết để phương thức này trả về giá trị true. Giá trị mặc định là 1.0, thể hiện tất cả các pixel đều giống nhau.
Giá trị trả về
  • Boolean true nếu hình ảnh giống nhau, nếu không boolean false.

void writeToFile (string filename, string format)

Lưu hình ảnh hiện tại vào tệp do filename chỉ định, ở định dạng do format chỉ định.

Đối số
path Tên tệp và đuôi tệp hợp lệ của tệp đầu ra.
format Định dạng tệp đầu ra. Nếu bạn không cung cấp định dạng cụ thể, phương thức này sẽ cố gắng đoán định dạng từ phần mở rộng của tên tệp. Nếu bạn không cung cấp phần mở rộng và định dạng nào trước đó, phương thức này sẽ sử dụng định dạng mặc định "png" (Đồ hoạ mạng di động).