magicfile icon وبسایت فایل سحرآمیز - magicfile.ir

تگ های موضوع نمونه کد اسکرین شات در سی شارپ

مقدمه



اسکرین شات یا تصویر از صفحه، یکی از ویژگی‌های کاربردی در برنامه‌نویسی است که به شما اجازه می‌دهد تا تصویری از محتوای صفحه نمایش کامپیوتر بگیرید. در سی‌شارپ، با استفاده از کتابخانه‌های مختلف می‌توان این کار را به سادگی انجام داد. در ادامه، به بررسی یک نمونه کد اسکرین شات در سی‌شارپ خواهیم پرداخت.

کتابخانه‌های مورد نیاز


برای گرفتن اسکرین شات در سی‌شارپ، نیاز به استفاده از فضای نام‌های زیر دارید:
```csharp
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;
```

نمونه کد


در ادامه یک کد ساده برای گرفتن اسکرین شات از صفحه نمایش ارائه می‌شود:
```csharp
public void TakeScreenshot()
{
// اندازه صفحه نمایش را دریافت می‌کنیم
Rectangle bounds = Screen.GetBounds(Point.Empty);
// ایجاد یک تصویر جدید با اندازه صفحه
using Bitmap screenshot = new Bitmap(bounds.Width, bounds.Height);
// ایجاد یک گرافیک از تصویر
using Graphics g = Graphics.FromImage(screenshot);
// گرفتن اسکرین شات
g.CopyFromScreen(Point.Empty, Point.Empty, bounds.Size);
// ذخیره تصویر به فرمت PNG
screenshot.Save("screenshot.png", ImageFormat.Png);
}
```

توضیحات کد


  1. دریافت اندازه صفحه: ابتدا با استفاده از `Screen.GetBounds(Point.Empty)` اندازه صفحه نمایش را دریافت می‌کنیم.

  1. ایجاد تصویر: سپس یک شیء از نوع `Bitmap` ایجاد می‌کنیم که ابعاد آن برابر با اندازه صفحه است.

  1. ایجاد گرافیک: با استفاده از `Graphics.FromImage` یک گرافیک از تصویر ایجاد می‌شود.

  1. گرفتن اسکرین شات: با استفاده از متد `CopyFromScreen` تصویر صفحه نمایش را به تصویر جدید منتقل می‌کنیم.

  1. ذخیره تصویر: در نهایت، تصویر به فرمت `PNG` و با نام `screenshot.png` ذخیره می‌شود.

نتیجه‌گیری


با استفاده از کدی که ارائه شد، می‌توانید به راحتی از صفحه نمایش خود اسکرین شات بگیرید. این قابلیت می‌تواند در برنامه‌های مختلف، از جمله نرم‌افزارهای آموزشی و ابزارهای عیب‌یابی، بسیار مفید باشد. با کمی تغییر در کد، می‌توانید ویژگی‌های بیشتری مانند ذخیره در فرمت‌های مختلف یا گرفتن اسکرین شات از پنجره‌های خاص را نیز پیاده سازی کنید.

نمونه کد اسکرین شات در سی‌شارپ


در برنامه‌نویسی سی‌شارپ، گرفتن اسکرین شات یکی از نیازهای رایج است، به خصوص برای توسعه نرم‌افزارهای مرتبط با تصویر، تست‌های تصویری، یا ابزارهای مانیتورینگ. در این مقاله، قصد دارم به صورت کامل و جامع، نمونه کد گرفتن اسکرین شات در سی‌شارپ را بررسی کنم، همراه با توضیحات لازم، نکات مهم، و چند مثال کاربردی.
پیش‌نیازهای اولیه
قبل از شروع، باید توجه کنید که برای انجام این کار، نیاز دارید:
- استفاده از فضای نام System.Drawing
- دسترسی به کلاس‌های مربوط به تصویر و دستگاه‌های گرافیکی
در پروژه‌تان، مطمئن شوید که ارجاع به اسمبلی System.Drawing دارید. در پروژه‌های ویندوز فرم، این فضای نام به‌طور پیش‌فرض وارد شده است، اما در پروژه‌های دیگر، ممکن است نیاز باشد آن را به صورت دستی اضافه کنید.
کد نمونه پایه برای گرفتن اسکرین شات
در ادامه، نمونه کد ساده‌ای را می‌بینید که تمام صفحه نمایش را اسکرین می‌کند و تصویر آن را در فایل ذخیره می‌کند:
```csharp
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;
namespace ScreenshotExample
{
class Program
{
static void Main(string[] args)
{
// تعریف اندازه صفحه نمایش
Rectangle bounds = Screen.PrimaryScreen.Bounds;
// ساختن یک تصویر جدید با همان اندازه
using (Bitmap screenshot = new Bitmap(bounds.Width, bounds.Height))
{
// ایجاد یک گرافیک برای تصویر
using (Graphics g = Graphics.FromImage(screenshot))
{
// کپی کردن کل صفحه نمایش
g.CopyFromScreen(bounds.X, bounds.Y, 0, 0, bounds.Size);
}
// ذخیره تصویر در فایل
screenshot.Save("screenshot.png", ImageFormat.Png);
}
Console.WriteLine("اسکرین شات با موفقیت گرفته شد!");
}
}
}
```
توضیحات کد:
- ابتدا، اندازه صفحه نمایش اصلی را با `Screen.PrimaryScreen.Bounds` مشخص می‌کنیم.
- سپس، یک شی `Bitmap` با همان اندازه می‌سازیم.
- بعد، با استفاده از `Graphics.FromImage()`، یک شی گرافیک مربوط به تصویر ایجاد می‌کنیم.
- در نهایت، با `CopyFromScreen()`، بخش مورد نظر از صفحه‌نمایش را در تصویر کپی می‌کنیم.
- در پایان، تصویر را به صورت PNG ذخیره می‌کنیم.
نکات مهم
  1. اسکرین شات چند صفحه‌ای: اگر نیاز دارید از چند مانیتور، یا صفحه‌های خاصی عکس بگیرید، باید اندازه و موقعیت آنها را مشخص کنید و عملیات را بر اساس آن انجام دهید.
  1. پروژه‌های ویندوز فرم: اگر در برنامه ویندوز فرم کار می‌کنید، می‌توانید از کنترل‌های دیگر نیز بهره ببرید، مثلا گرفتن اسکرین از کنترل خاص.
  1. ذخیره‌سازی تصاویر: می‌توانید تصاویر را در قالب‌های مختلف مثل JPEG، BMP، TIFF ذخیره کنید. فقط کافی است نوع `ImageFormat` را تغییر دهید.
  1. مدیریت حافظه: در این نمونه، از `using` برای اطمینان از آزادسازی منابع استفاده شده است. این کار ضروری است، چون منابع گرافیکی سنگین هستند.
  1. گرفتن اسکرین شات از بخش خاص: اگر نیاز دارید فقط بخشی از صفحه را بگیرید، باید مختصات و اندازه آن بخش را مشخص کنید، مثلا به جای `bounds`, یک `Rectangle` دلخواه تعریف کنید.

کد نمونه برای بخش خاص
در این قسمت، نمونه‌ای برای گرفتن تصویر از یک ناحیه خاص داریم:
```csharp
Rectangle section = new Rectangle(100, 100, 300, 200);
using (Bitmap partScreenshot = new Bitmap(section.Width, section.Height))
{
using (Graphics g = Graphics.FromImage(partScreenshot))
{
g.CopyFromScreen(section.Location, Point.Empty, section.Size);
}
partScreenshot.Save("section_screenshot.png", ImageFormat.Png);
}
```
در این حالت، فقط ناحیه‌ای با مختصات (100,100) و اندازه 300×200 پیکسل گرفته می‌شود.
پیشنهاد نهایی
برای توسعه بهتر، پیشنهاد می‌کنم امکانات زیر را بررسی کنید:
- افزودن قابلیت ضبط خودکار در فواصل زمانی مشخص (اسکرین شات‌های متوالی)
- افزودن قابلیت ضبط اسکرین شات از پنجره یا کنترل خاص، نه کل صفحه
- افزودن گزینه‌های ذخیره‌سازی در مسیرهای دلخواه و با فرمت‌های مختلف
- افزودن واسط کاربری برای انتخاب ناحیه یا تنظیمات ضبط
در نهایت، این نمونه‌ها پایه‌ای قدرتمند برای پروژه‌های پیچیده‌تر هستند، و با کمی خلاقیت، می‌توانید ابزارهای حرفه‌ای و کاربرپسند بسازید. اگر سوال خاصی دارید یا نیاز به نمونه‌های پیشرفته‌تر دارید، حتما بگویید!
مشاهده بيشتر

لیست فایل های ویژه وبسایت

دانلود-نرم-افزار-تبدیل-txt-به-vcf-:-برنامه-تبدیل-فایل-متنی-تکست-txt-به-وی‌سی‌اف-vcf-(Virtual-Contact-File-مخاطب-موبایل)

دانلود نرم افزار تبدیل txt به vcf : برنامه تبدیل فایل متنی تکست txt به وی‌سی‌اف vcf (Virtual Contact File مخاطب موبایل)


دانلود-دیتابیس-تقویم-1404-در-اکسل

دانلود دیتابیس تقویم 1404 در اکسل


نرم-افزار-ترجمه-خودکار-فایل-های-po-,-pot-بصورت-کامل-برای-تمامی-زبان-ها-از-جمله-فارسی

نرم افزار ترجمه خودکار فایل های po , pot بصورت کامل برای تمامی زبان ها از جمله فارسی


نرم-افزار-تغییر-زبان-سورس-کد-ویژوال-استودیو-(عناصر-دیزاین-طراحی-فرم-ها)

نرم افزار تغییر زبان سورس کد ویژوال استودیو (عناصر دیزاین طراحی فرم ها)


بهترین-سرویس-پوش-نوتیفیکیشن-(Web-Push-Notification)-اسکریپت-مدیریت-اعلان-و-ساخت-پوش-نوتیفیکیشن-سایت-و-ارسال-پوش-از-طریق-php

بهترین سرویس پوش نوتیفیکیشن (Web Push Notification) اسکریپت مدیریت اعلان و ساخت پوش نوتیفیکیشن سایت و ارسال پوش از طریق php


تعداد فایل های دانلود شده

41908+

آخرین بروز رسانی در سایت

1404/6/26

قدمت سایت فایل سحرآمیز

+8 سال

تعداد محصولات برای دانلود

2718+

دانلود فایل
🛒 چطور فایل را انتخاب و به سبد دانلود اضافه کنم؟
📖 نحوه دانلود کردن فایل از سایت
🗂️ آیا فایل‌ها با پسوند zip یا rar هستند؟
🔐 آیا فایل‌ها رمز عبور دارند؟
▶️ آیا بعد از دانلود می‌توانم فایل‌ها را اجرا کنم؟
📜 قوانین کلی سایت برای دانلود فایل‌ها چیست؟
📥 بعد از دانلود فایل
❗ اگر پرداخت موفق بود ولی نتوانستم دانلود کنم؟
🔄 چگونه لینک دانلود را بازیابی کنم؟
👤 آیا می‌توانم از حساب کاربری دانلود کنم؟
🔢 محدودیت دانلود هر فایل چند بار است؟
⏳ لینک دانلود تا چند روز فعال است؟
📧 اگر ایمیل اشتباه وارد کنم چه می‌شود؟
💳 مشکل پرداخت
🌐 اگر هنگام وصل شدن به درگاه مشکل داشتم؟
🔁 آیا درگاه پرداخت دوم وجود دارد؟
🚫 اگر پرداخت ناموفق بود چه کنم؟
💸 آیا مبلغ پرداخت شده قابل بازگشت است؟
📂 خراب بودن فایل
🧪 آیا فایل‌ها قبل از ارسال تست می‌شوند؟
❌ اگر فایل بعد از دانلود خراب بود؟
🕒 آیا پشتیبانی پس از 3 روز وجود دارد؟
🗃️ نحوه باز کردن فایل
📦 فایل‌ها به چه صورت فشرده هستند؟
🔑 آیا فایل‌ها پسورد دارند؟
🧰 با چه نرم‌افزاری فایل‌ها را باز کنم؟
🛠️ آیا فایل‌ها قابلیت ترمیم دارند؟
✏️ درخواست ویرایش فایل
🧑‍💻 آیا سایت پشتیبانی برای ویرایش دارد؟
🔄 اگر نیاز به تغییر فایل داشتم؟
📩 آیا درخواست‌های ویرایش پاسخ داده می‌شود؟
💰 مالی
↩️ آیا امکان برگشت وجه وجود دارد؟
📃 قوانین بازگشت مبلغ چگونه است؟
💼 آیا مبلغ شامل هزینه پشتیبانی می‌شود؟
🛠️ فنی
🎓 آیا پشتیبانی شامل آموزش نصب می‌شود؟
⏱️ زمان پاسخگویی پشتیبانی چقدر است؟
⚠️ اگر کاربر ادب را رعایت نکند؟
📌 چه مواردی شامل پشتیبانی نمی‌شوند؟
🧾 آیا اطلاعات کاربران ممکن است تغییر کند؟
🚀 نحوه اجرای فایل‌ها
🐘 نحوه اجرای فایل‌های PHP
💻 نحوه اجرای فایل‌های VB.NET و C#
📱 نحوه اجرای سورس‌کدهای B4A
📊 نحوه اجرای فایل‌های Excel
📁 نحوه اجرای فایل‌های Access
🗄️ نحوه اجرای فایل‌های SQL
🌐 نحوه اجرای سورس‌کدهای HTML/CSS/JS
📄 نحوه اجرای فایل‌های متنی و PDF

راهنمایی 🎧 پشتیبانی سایت MagicFile.ir

👋 سلام و وقت بخیر!

به سامانه 🎧 راهنمایی سایت MagicFile.ir خوش آمدید! 🌟
اینجا می‌تونید به‌راحتی پاسخ سوالات خودتون رو پیدا کنید، یا اگر مشکلی در دانلود، پرداخت دارید، براحتی از بین گزینه ها مشکل خود را انتخاب کنید تا توضیحات را دریافت نمایید! 🧑‍💻💡

از منوی سمت راست می‌تونید دسته‌بندی‌های مختلف سوالات متداول 📚 رو ببینید و فقط با یک کلیک پاسخ‌هاشون رو مشاهده کنید.

اگر سوالی دارید، همین حالا بپرسید! 😊

📞 برای دریافت کمک مستقیم، به پشتیبانی سایت مراجعه کنید.
هم‌اکنون