تبلیغات
تبلیغات

گرفتن اسکرین شات از صفحه در سی شارپ

گرفتن اسکرین شات از صفحه در سی شارپ

برخی اوقات شاید نیاز داشته باشیم تا کدی بنویسیم که از صفحه، اسکرین شات تهیه کند (به عبارتی از صفحه کامپیوتر، عکس بگیرد).

مراحل انجام کار

برای گرفتن یک اسکرین شات از کل صفحه و قرار دادن آن در یک Bitmap، به صورت زیر عمل می‌کنیم:

خط اول: از کلاس Screen، به PrimaryScreen که آبجکت اسکرین اصلی صفحه را برمی‌گرداند، مقدار Bounds را دریافت می‌کنیم. Bounds به محدوده‌ی Screen اشاره دارد که از نوع آبجکت مستطیل/مربع نیز تعریف شده است.

خط دوم: یک شیء بیت‌مپ، در ابعاد طول و عرض محدوده‌ی صفحه ایجاد می‌کنیم.

خط سوم: یک شیء گرافیکی از بیتمپ ایجاد می‌کنیم.

خط چهارم: شیء گرافیکی شامل تابعی به نام CopyFromScreen می‌باشد که حالت‌های مختلف ورودی داشته و یکی از حالت‌های آن به صورت زیر می‌باشد؛ که در اینجا پنج ورودی دریافت شده است:

  • ورودی اول: نقط‌ی شروع X یا فاصله از چپ صفحه
  • ورودی دوم: نقطه‌ی شروع Y یا فاصله از بالای صفحه
  • ورودی سوم: نقطه‌ی پایان X یا فاصله از راست صفحه
  • ورودی چهارم: نقطه‌ی پایان Y یا فاصله از پایین صفحه
  • ورودی پنجم: اندازه‌ی بلاک (طول و عرض)

در نهایت می‌توانیم بیتمپ را  برای مثال در یک پیکچرباکسی نمایش دهیم: (یا آن را اگر نیاز داشتیم ذخیره کنیم)

البته شاید کل تصویر گرفته شده را در پیکچرباکس نمایش ندهد؛ که می‌توانید ویژيگی SizeMode آن را به مقدار StretchImage تغییر دهید.

کانال تلگرام فول کده
تبلیغات

درباره نویسنده

هادی اکبرزاده

[ مدیر فول کده ]

علاقه‌مند به اشتراک‌گذاری اطلاعات در هر زمینه‌ای
برنامه‌نویس فول استک

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نظرات ثبت شده بدون دیدگاه