چگونه متن را از صفحه به یک ماکرو بخوانیم
OCR صفحه در یک ماکرو Windows: یک عدد، یک وضعیت یا یک نام را از هر پنجره بخوانید، سپس تصمیم بگیرید با آن چه کنید.
بهروزرسانی: 18 September 2026 · خواندن متن از صفحه بخشی از طرح Pro در Myna Recorder است؛ هر حساب جدید آن را ۷ روز رایگان امتحان میکند.
۱. کار read_text چیست
بیشتر ابزارهای ماکرو میتوانند کلیک و تایپ کنند، اما نمیتوانند بفهمند صفحه چه میگوید. read_text یک مستطیل از صفحه را در یک متغیر میخواند، و از آنجا مقدار میتواند جای دیگری تایپ شود، مقایسه شود، یا در یک پیام استفاده شود:
total = read_text(region=(820, 400, 180, 40), single_line=True)
message_box("The order total was ${total}")
۲. انتخاب یک ناحیه
همیشه region=(x, y, width, height) را بدهید. خواندن کل دسکتاپ آن را آنقدر کوچک میکند که متن معمول رابط کاربری خوانا نیست. ناحیهای به اندازهی فیلدی که به آن اهمیت میدهید سریع و دقیق است. single_line=True هر چیزی را که برمیگردد به یک خط تبدیل میکند، که برای یک عدد یا یک نام همان چیزی است که میخواهید. هر عددی در ناحیه میتواند یک متغیر یا یک جمع باشد، پس یک ناحیه میتواند دنبال تطبیقی باشد که با wait_for پیدا شده است.
۳. سه خواننده
| engine= | چیست | هزینهی اعتبار دارد | در برنامهی خروجیگرفتهشده منتقل میشود |
|---|---|---|---|
| "builtin" | پیشفرض. روی رایانهی شما اجرا میشود. | خیر | بله |
| "tesseract" | یک خوانندهی محلی دوم. برخی صفحهها را بهتر و برخی را بدتر از خوانندهی داخلی میخواند و با page_mode= کنترل میشود که تصویر چگونه به خط تقسیم شود. وقتی خواندن نزدیک اما اشتباه است، آن را امتحان کنید. | خیر | بله |
| "ai" | یک مدل رونویسی روی سرور ما، برای متنی که هر دو خوانندهی محلی اشتباه میخوانند. | بله | خیر |
خواننده برای هر گام جداگانه انتخاب میشود، پس یک ماکرو میتواند در همه جا از خوانندهی رایگان و روی فیلد مهم از خوانندهی هوش مصنوعی استفاده کند.
۴. پاکسازی و استفاده از نتیجه
total = read_text(region=(820, 400, 180, 40)).to_number()
if total < 1000:
notify("Total looks low: ${total}")
متدها آنچه را برگشته پاکسازی میکنند؛ .to_number() پرکاربردترین آنهاست. یک ناحیهی خالی یک رشتهی خالی ذخیره میکند و اجرا ادامه مییابد، پس شرطی را که مینویسید هم با مقدار خالی و هم با یک مقدار آزمایش کنید. پنل متغیرها هر متغیر را در لحظهی اجرا نشان میدهد، که سریعترین راه برای دیدن چیزی است که خواننده واقعاً برگردانده.
۵. چه زمانی بهجای آن از هوش مصنوعی بپرسید
read_text متن را رونویسی میکند. برای استدلال دربارهی صفحه، از ask_ai استفاده کنید: «چند ردیف قرمز است؟»، «آیا یک گفتگوی خطا وجود دارد؟». سه نقش دارد: "count" یک عدد و محل هر مورد را برمیگرداند تا ماکرو بتواند روی آن کلیک کند؛ "explain" یک جمله برای گزارش یا اعلان برمیگرداند؛ "read" با مدلی که انتخاب کردهاید رونویسی میکند. به همان دلیل گفتهشده، یک ناحیهی کوچک بدهید: مدل میتواند چیزها را در کل دسکتاپ بشمارد اما نمیتواند پس از آن جایشان را پیدا کند. هر فراخوانی اعتبار هزینه دارد و هر اجرا به ۶۰ فراخوانی هوش مصنوعی محدود است. جزئیات در راهنما آمده است.
۶. نظارت بر متن هنگام اجرای ماکرو
یک گام یکبار، همانجا که قرار دادهاید، میخواند. یک ردیف نظارت که روی Ask AI تنظیم شده باشد، در طول اجرا یا بهتنهایی پس از Start watching نگاه میکند و وقتی پاسخ ظاهر یا ناپدید شود فعال میشود. میتواند یک پاپآپ نشان دهد، پیام Telegram یا Discord همراه با اسکرینشات بفرستد، یا ماکرو را متوقف کند. به این ترتیب بدون داشتن یک گام جدا در هر حلقه، ساعت ۳ صبح دربارهی بنر «session expired» به شما اطلاع داده میشود.
۷. هزینهها، طرحها و خروجی
- خواندن متن از صفحه و ask_ai در طرح Pro گنجانده شدهاند، که همراه با 3,000 اعتبار هر 30 روز نیز میآید. دو خوانندهی محلی هرگز اعتباری مصرف نمیکنند.
- engine="ai"، ask_ai و ردیفهای نظارت هوش مصنوعی اعتبار مصرف میکنند و خروجی بهصورت برنامه را مسدود میکنند. ماکرویی که با خوانندهی داخلی یا Tesseract میخواند، بدون مشکل خروجی گرفته میشود و خواننده درون فایل قرار میگیرد.
- طرحها و بستههای اعتبار در صفحهی قیمتها هستند.