MonkeyImage
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
기기나 에뮬레이터의 화면 이미지를 보유한 monkeyrunner 클래스입니다. 이미지는 스크린샷 중에 화면 버퍼에서 복사됩니다. 이 객체의 메서드를 통해 이미지를 다양한 저장 형식으로 변환하고 파일에 이미지를 작성하며 일부 이미지를 복사하고 이 객체를 다른 MonkeyImage
객체와 비교할 수 있습니다.
MonkeyImage
의 새로운 인스턴스를 생성할 필요가 없습니다. 대신
MonkeyDevice.takeSnapshot()
을 사용하여 스크린샷에서 새로운 인스턴스를 생성합니다. 예를 들어 다음을 사용하세요.
newimage = MonkeyDevice.takeSnapshot()
요약
메서드 |
string
|
convertToBytes
(string format)
현재 이미지를 특정 형식으로 변환하고 바이너리 바이트의 iterable로 액세스할 수 있는 string으로 반환합니다.
|
tuple
|
getRawPixel
(integer x,
integer y)
이미지 위치(x, y)의 단일 픽셀을 (a, r, g, b) 형식의 integer tuple로 반환합니다.
|
integer
|
getRawPixelInt
(integer x,
integer y)
이미지 위치의 단일 픽셀을 32비트 integer로 반환합니다.
|
MonkeyImage
|
getSubImage
(tuple rect)
현재 이미지를 사각형으로 선택하여 새로운 MonkeyImage 객체를 생성합니다.
|
boolean
|
sameAs
(MonkeyImage
other,
float percent)
이 MonkeyImage 객체를 다른 것과 비교하고 비교 결과를 반환합니다. percent 인수는 두 이미지가 '동일'할 수 있는 비율 차이를 지정합니다.
|
void
|
writeToFile
(string path,
string format)
format 으로 지정된 형식으로 현재 이미지를 filename 으로 지정된 파일에 작성합니다.
|
공개 메서드
현재 이미지를 특정 형식으로 변환하고 바이너리 바이트의 iterable로 액세스할 수 있는 string으로 반환합니다.
인수
형식 |
원하는 출력 형식입니다. 모든 일반적인 래스터 출력 형식이 지원됩니다.
기본값은 'png'(Portable Network Graphics)입니다.
|
tuple
getRawPixel
(integer x,
integer y)
이미지 위치(x, y)의 단일 픽셀을 (a, r, g, b) 형식의 integer tuple로 반환합니다.
인수
x |
스크린샷을 찍을 때와 같은 방향으로 화면 왼쪽에서 0으로 시작하는 픽셀의 수평 위치입니다. |
y |
스크린샷을 찍을 때와 같은 방향으로 화면 상단에서 0으로 시작하는 수직 위치입니다. |
반환 값
- (a, r, g, b) 형식으로 픽셀을 나타내는 정수 tuple로 a는 알파 채널 값이고 r과 g, b는 각각 빨강, 녹색, 파랑 값입니다.
tuple
getRawPixelInt
(integer x,
integer y)
이미지 위치(x, y)의 단일 픽셀을 integer로 반환합니다. 이 메서드를 사용하여 메모리를 절약합니다.
인수
x |
스크린샷을 찍을 때와 같은 방향으로 화면 왼쪽에서 0으로 시작하는 픽셀의 수평 위치입니다. |
y |
스크린샷을 찍을 때와 같은 방향으로 화면 상단에서 0으로 시작하는 수직 위치입니다. |
반환 값
- 8비트 값인 픽셀의 a, r, g, b 값은 32비트 정수로 결합되며 a는 가장 왼쪽 8비트, r은 그다음 가장 오른쪽 8비트가 되는 식입니다.
MonkeyImage
getSubImage
(tuple rect)
현재 이미지를 사각형으로 선택하여 새로운 MonkeyImage
객체를 생성합니다.
인수
rect |
선택 영역을 지정하는 튜플(x, y, w, h)입니다. x 및 y는 선택 영역의 왼쪽 상단 모서리의 0 기반 픽셀 위치를 지정합니다. w는 영역의 너비를, h는 높이를 픽셀 단위로 각각 지정합니다. 이미지 방향은 스크린샷을 만들 때의 화면 방향과 같습니다.
|
반환 값
-
선택 영역이 포함된 새로운
MonkeyImage
객체입니다.
boolean
sameAs
(
MonkeyImage
otherImage,
float percent
)
이 MonkeyImage
객체를 다른 것과 비교하고 비교 결과를 반환합니다. percent
인수는 두 이미지가 '동일'할 수 있는 비율 차이를 지정합니다.
인수
기타 |
이 객체와 비교할 또 다른 MonkeyImage 객체입니다.
|
percent |
메서드가 true 를 반환하기 위해 동일해야 하는 픽셀 비율을 나타내는 0.0에서 1.0까지의 부동 소수점입니다. 기본값은 1.0이고 모든 픽셀이 일치해야 함을 나타냅니다.
|
반환 값
-
이미지가 일치하면 부울이
true
이고 일치하지 않으면 부울이 false
입니다.
format
으로 지정된 형식으로 현재 이미지를 filename
으로 지정된 파일에 작성합니다.
인수
경로 |
출력 파일의 정규화된 파일 이름 및 확장자입니다. |
형식 |
파일에 사용할 출력 형식입니다. 형식이 제공되지 않으면 메서드는 파일 이름의 확장자에서 형식을 추측하려고 시도합니다. 확장자가 제공되지 않고 형식도 지정되지 않으면 기본 형식인 'png'(Portable Network Graphics)가 사용됩니다.
|
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[null,null,["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# MonkeyImage\n\nA monkeyrunner class to hold an image of the device or emulator's screen. The image is\ncopied from the screen buffer during a screenshot. This object's methods allow you to\nconvert the image into various storage formats, write the image to a file, copy parts of\nthe image, and compare this object to other `MonkeyImage` objects.\n\n\nYou do not need to create new instances of `MonkeyImage`. Instead, use\n[MonkeyDevice.takeSnapshot()](/tools/help/MonkeyDevice#takeSnapshot) to create a new instance from a screenshot. For example, use: \n\n```\nnewimage = MonkeyDevice.takeSnapshot()\n```\n\nSummary\n-------\n\n| Methods ||||||||||||\n|----------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|---|---|---|---|---|---|---|---|---|\n| *string* | [convertToBytes](#convertToBytes) (*string* format) Converts the current image to a particular format and returns it as a *string* that you can then access as an *iterable* of binary bytes. |\n| *tuple* | [getRawPixel](#getRawPixel) (*integer* x, *integer* y) Returns the single pixel at the image location (x,y), as an a *tuple* of *integer*, in the form (a,r,g,b). |\n| *integer* | [getRawPixelInt](#getRawPixelInt) (*integer* x, *integer* y) Returns the single pixel at the image location (x,y), as a 32-bit *integer*. |\n| ` `[MonkeyImage](/tools/help/MonkeyImage)` ` | [getSubImage](#getSubImage) (*tuple* rect) Creates a new `MonkeyImage` object from a rectangular selection of the current image. |\n| *boolean* | [sameAs](#sameAs) ([MonkeyImage](/tools/help/MonkeyImage) other, *float* percent) Compares this `MonkeyImage` object to another and returns the result of the comparison. The `percent` argument specifies the percentage difference that is allowed for the two images to be \"equal\". |\n| *void* | [writeToFile](#writeToFile) (*string* path, *string* format) Writes the current image to the file specified by `filename`, in the format specified by `format`. |\n\nPublic methods\n--------------\n\n#### *string*\nconvertToBytes\n( *string* format)\n\n\nConverts the current image to a particular format and returns it as a *string*\nthat you can then access as an *iterable* of binary bytes. \n\n##### Arguments\n\n| format | The desired output format. All of the common raster output formats are supported. The default value is \"png\" (Portable Network Graphics). |\n|--------|-------------------------------------------------------------------------------------------------------------------------------------------|\n\n#### *tuple*\ngetRawPixel\n(*integer* x, *integer* y)\n\n\nReturns the single pixel at the image location (x,y), as an\na *tuple* of *integer*, in the form (a,r,g,b). \n\n##### Arguments\n\n| x | The horizontal position of the pixel, starting with 0 at the left of the screen in the orientation it had when the screenshot was taken. |\n| y | The vertical position of the pixel, starting with 0 at the top of the screen in the orientation it had when the screenshot was taken. |\n|---|------------------------------------------------------------------------------------------------------------------------------------------|\n\n##### Returns\n\n- A tuple of integers representing the pixel, in the form (a,r,g,b) where a is the alpha channel value, and r, g, and b are the red, green, and blue values, respectively. \n\n#### *tuple*\ngetRawPixelInt\n(*integer* x, *integer* y)\n\n\nReturns the single pixel at the image location (x,y), as an\nan *integer*. Use this method to economize on memory. \n\n##### Arguments\n\n| x | The horizontal position of the pixel, starting with 0 at the left of the screen in the orientation it had when the screenshot was taken. |\n| y | The vertical position of the pixel, starting with 0 at the top of the screen in the orientation it had when the screenshot was taken. |\n|---|------------------------------------------------------------------------------------------------------------------------------------------|\n\n##### Returns\n\n- The a,r,g, and b values of the pixel as 8-bit values combined into a 32-bit integer, with a as the leftmost 8 bits, r the next rightmost, and so forth. \n\n#### `\n`[MonkeyImage](/tools/help/MonkeyImage)`\n`\ngetSubImage\n(*tuple* rect)\n\n\nCreates a new `MonkeyImage` object from a rectangular selection of the\ncurrent image. \n\n##### Arguments\n\n| rect | A tuple (x, y, w, h) specifying the selection. x and y specify the 0-based pixel position of the upper left-hand corner of the selection. w specifies the width of the region, and h specifies its height, both in units of pixels. The image's orientation is the same as the screen orientation at the time the screenshot was made. |\n|------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\n##### Returns\n\n- A new `MonkeyImage` object containing the selection. \n\n#### *boolean*\nsameAs\n( `\n`[MonkeyImage](/tools/help/MonkeyImage)`\n` otherImage, *float* percent )\n\n\nCompares this `MonkeyImage` object to another and returns the result of\nthe comparison. The `percent` argument specifies the percentage\ndifference that is allowed for the two images to be \"equal\". \n\n##### Arguments\n\n| other | Another `MonkeyImage` object to compare to this one. |\n| percent | A float in the range 0.0 to 1.0, inclusive, indicating the percentage of pixels that need to be the same for the method to return `true`. The default is 1.0, indicating that all the pixels must match. |\n|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\n##### Returns\n\n- Boolean `true` if the images match, or boolean `false` otherwise. \n\n#### void\nwriteToFile\n(*string* filename, *string* format)\n\n\nWrites the current image to the file specified by `filename`, in the\nformat specified by `format`. \n\n##### Arguments\n\n| path | The fully-qualified filename and extension of the output file. |\n| format | The output format to use for the file. If no format is provided, then the method tries to guess the format from the filename's extension. If no extension is provided and no format is specified, then the default format of \"png\" (Portable Network Graphics) is used. |\n|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|"]]