MonkeyImage

一個 monkeyrunner 類別,用於儲存裝置或模擬器螢幕的圖像。系統會從螢幕截圖緩衝區中複製圖像。這個物件的方法可將圖像轉換為各種儲存格式、將圖像寫入檔案、複製圖像的特定部分,以及將此物件與其他 MonkeyImage 物件進行比較。

您不需要建立新的 MonkeyImage 執行個體。請改為使用 MonkeyDevice.takeSnapshot() 從螢幕截圖中建立新的執行個體。例如,請使用:

newimage = MonkeyDevice.takeSnapshot()

摘要

方法
字串 conversionToBytes (字串格式)
將目前的圖像轉換為特定格式,並以字串的形式傳回,接著就能以二進位元組的形式存取可疊代檔案。
元組 getRawPixel (整數x、整數y)
傳回圖像位置 (x,y) 的單一像素,作為整數元組,格式為 (a、r、g、b)。
整數 getRawPixelInt (整數x、整數y)
傳回圖像位置 (x,y) 中的單一像素,做為 32 位元的整數
MonkeyImage getSubImage (tuplerect)
從目前圖像的矩形中建立新的 MonkeyImage 物件。
布林值 sameAS (MonkeyImage 其他 浮動百分比)
將此 MonkeyImage 物件與其他物件比較,然後傳回比較結果。percent 引數會指定這兩種圖像可「相等」的百分比差。
void writeToFile (字串路徑、string 格式)
format 指定的格式將目前的圖像寫入 filename 指定的檔案。

公用方法

字串 conversionToBytes (字串格式)

將目前的圖像轉換為特定格式,並以字串的形式傳回,接著就能以二進位元組的形式存取可疊代檔案。

引數
格式 所需的輸出格式。支援所有常見的光柵輸出格式。預設值為「png」(可攜式網路圖形)。

tuple getRawPixel (整數) x、 整數 y)

傳回圖像位置 (x,y) 的單一像素,作為整數元組,格式為 (a、r、g、b)。

引數
x 像素的水平位置 (以螢幕擷取時的方向為準,由螢幕左側 0 開始)。
y 像素的垂直位置 (以螢幕擷取時的方向為準,由螢幕頂端 0 開始)。
傳回
  • 代表像素的整數元組,格式為 (a、r、g、b),其中 a 為 Alpha 管道值,r、g 和 b 則分別是紅色、綠色和藍色值。

tuple getRawPixelInt (整數) x、 整數 y)

傳回圖像位置 (x,y) 中的單一像素,做為整數。使用這個方法可節省記憶體。

引數
x 像素的水平位置 (以螢幕擷取時的方向為準,由螢幕左側 0 開始)。
y 像素的垂直位置 (以螢幕擷取時的方向為準,由螢幕頂端 0 開始)。
傳回
  • 做為 8 位元值像素的 a、r、g 和 b 值,合併為 32 位元整數,其中a 是最左端的 8 位元,r 是最右端,依此類推。

MonkeyImage getSubImage (tuple rect)

從目前圖像的矩形中建立新的 MonkeyImage 物件。

引數
rect 用於指定選項的元組 (x、y、w、h)。x 和 y 則指定選項左上角的「0」像素位置。w 可指定區域寬度,h 會指定高度 (以像素為單位)。

圖像的方向與擷取畫面的螢幕方向相同。

傳回
  • 包含所選項目的新 MonkeyImage 物件。

布林值 sameAs ( MonkeyImage otherImage , 浮點百分比 )

將此 MonkeyImage 物件與其他物件比較,然後傳回比較結果。percent 引數會指定這兩種圖像可「相等」的百分比差。

引數
其他 其他要比較此物件的 MonkeyImage 物件。
百分比 範圍介於 0.0 到 1.0 (含) 之間的浮點數,代表傳回 true 的方法需要相同的像素百分比。預設值為 1.0,表示所有像素都必須相符。
傳回
  • 如果圖像相符,會傳回布林值 true,否則會傳回布林值 false

void writeToFile (字串檔案名稱、 字串格式)

format 指定的格式將目前的圖像寫入 filename 指定的檔案。

引數
路徑 輸出檔案的完整檔案名稱和副檔名。
格式 檔案使用的輸出格式。如未提供格式,這個方法會嘗試猜測檔案名稱副檔名中的格式。如果未提供擴充功能,且未指定格式,則會使用「png」(可攜式網路圖形) 的預設格式。