میمون تصویر
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
یک کلاس monkeyrunner برای نگه داشتن تصویری از صفحه نمایش دستگاه یا شبیه ساز. تصویر در حین اسکرین شات از بافر صفحه کپی می شود. روشهای این شی به شما امکان میدهد تصویر را به فرمتهای ذخیرهسازی مختلف تبدیل کنید، تصویر را در یک فایل بنویسید، بخشهایی از تصویر را کپی کنید و این شی را با سایر اشیاء MonkeyImage
مقایسه کنید.
شما نیازی به ایجاد نمونه های جدید از MonkeyImage
ندارید. در عوض، از MonkeyDevice.takeSnapshot()
برای ایجاد یک نمونه جدید از یک اسکرین شات استفاده کنید. به عنوان مثال، استفاده کنید:
newimage = MonkeyDevice.takeSnapshot()
خلاصه
روش ها |
---|
رشته | convertToBytes (فرمت رشته ) تصویر فعلی را به فرمت خاصی تبدیل می کند و آن را به صورت رشته ای برمی گرداند که سپس می توانید به عنوان یک بایت باینری تکرارپذیر به آن دسترسی داشته باشید. |
چندتایی | getRawPixel ( عدد صحیح x، عدد صحیح y) تک پیکسل را در محل تصویر (x,y) به صورت یک عدد صحیح به شکل (a,r,g,b) برمیگرداند. |
عدد صحیح | getRawPixelInt ( عدد صحیح x، عدد صحیح y) تک پیکسل را در محل تصویر (x,y) به عنوان یک عدد صحیح 32 بیتی برمیگرداند. |
MonkeyImage | getSubImage ( tuple rect) یک شی MonkeyImage جدید از یک انتخاب مستطیلی از تصویر فعلی ایجاد می کند. |
بولی | sameAs ( MonkeyImage دیگر، درصد شناور ) این شی MonkeyImage با شی دیگری مقایسه می کند و نتیجه مقایسه را برمی گرداند. آرگومان percent درصد اختلاف مجاز برای "برابر" بودن دو تصویر را مشخص می کند. |
باطل | writeToFile (مسیر رشته ، قالب رشته ) تصویر فعلی را در فایلی که با filename مشخص شده است، در قالب مشخص شده توسط format مینویسد. |
روش های عمومی
تصویر فعلی را به فرمت خاصی تبدیل می کند و آن را به صورت رشته ای برمی گرداند که سپس می توانید به عنوان یک بایت باینری تکرارپذیر به آن دسترسی داشته باشید.
استدلال ها
قالب | فرمت خروجی مورد نظر همه فرمت های رایج خروجی شطرنجی پشتیبانی می شوند. مقدار پیش فرض "png" (گرافیک شبکه قابل حمل) است. |
---|
تاپل getRawPixel ( عدد صحیح x، عدد صحیح y)
تک پیکسل را در محل تصویر (x,y) به صورت یک عدد صحیح به شکل (a,r,g,b) برمیگرداند.
استدلال ها
x | موقعیت افقی پیکسل که با 0 در سمت چپ صفحه در جهتی که هنگام گرفتن اسکرین شات داشت شروع می شود. |
---|
y | موقعیت عمودی پیکسل، با 0 در بالای صفحه در جهتی که هنگام گرفتن اسکرین شات داشت شروع می شود. |
---|
برمی گرداند
- چند اعداد صحیح که پیکسل را نشان می دهند، به شکل (a,r,g,b) که a مقدار کانال آلفا و r, g, و b به ترتیب مقادیر قرمز، سبز و آبی هستند.
تاپل getRawPixelInt ( عدد صحیح x، عدد صحیح y)
تک پیکسل را در محل تصویر (x,y) به عنوان یک عدد صحیح برمیگرداند. از این روش برای صرفه جویی در حافظه استفاده کنید.
استدلال ها
x | موقعیت افقی پیکسل که با 0 در سمت چپ صفحه در جهتی که هنگام گرفتن اسکرین شات داشت شروع می شود. |
---|
y | موقعیت عمودی پیکسل، با 0 در بالای صفحه در جهتی که هنگام گرفتن اسکرین شات داشت شروع می شود. |
---|
برمی گرداند
- مقادیر a، r، g و b پیکسل به عنوان مقادیر 8 بیتی در یک عدد صحیح 32 بیتی ترکیب می شوند که a به عنوان سمت چپ ترین 8 بیت، r بعدی سمت راست، و غیره.
MonkeyImage
getSubImage ( تاپل rect)
یک شی MonkeyImage
جدید از یک انتخاب مستطیلی از تصویر فعلی ایجاد می کند.
استدلال ها
راست | یک تاپل (x، y، w، h) که انتخاب را مشخص می کند. x و y موقعیت پیکسل مبتنی بر 0 را در گوشه سمت چپ بالای انتخاب مشخص می کنند. w عرض منطقه و h ارتفاع آن را هر دو بر حسب واحد پیکسل مشخص می کند. جهت تصویر همانند جهت صفحه در زمان تهیه اسکرین شات است. |
---|
برمی گرداند
- یک شی
MonkeyImage
جدید حاوی انتخاب.
Boolean sameAs ( MonkeyImage
otherImage، درصد شناور )
این شی MonkeyImage
با شی دیگری مقایسه می کند و نتیجه مقایسه را برمی گرداند. آرگومان percent
درصد اختلاف مجاز برای "برابر" بودن دو تصویر را مشخص می کند.
استدلال ها
دیگر | یکی دیگر از شی MonkeyImage برای مقایسه با این یکی. |
---|
درصد | یک شناور در محدوده 0.0 تا 1.0، شامل درصد پیکسل هایی که باید یکسان باشند تا روش به true برگردد. پیش فرض 1.0 است که نشان می دهد همه پیکسل ها باید مطابقت داشته باشند. |
---|
برمی گرداند
- اگر تصاویر مطابقت داشته باشند،
true
، یا در غیر این صورت، false
بولی.
تصویر فعلی را در فایلی که با filename
مشخص شده است، در قالب مشخص شده توسط format
مینویسد.
استدلال ها
مسیر | نام فایل کاملا واجد شرایط و پسوند فایل خروجی. |
---|
قالب | فرمت خروجی مورد استفاده برای فایل. اگر هیچ فرمتی ارائه نشده باشد، روش سعی میکند فرمت را از پسوند نام فایل حدس بزند. اگر پسوندی ارائه نشده باشد و هیچ فرمتی مشخص نشده باشد، از فرمت پیش فرض "png" (Portable Network Graphics) استفاده می شود. |
---|
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],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|--------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|"]]