C#如何實(shí)現(xiàn)屏幕拷貝功能

c#
小樊
83
2024-08-29 03:28:45

在C#中,可以使用Graphics類(lèi)和Bitmap類(lèi)來(lái)實(shí)現(xiàn)屏幕截圖(屏幕拷貝)功能

using System;
using System.Drawing;
using System.Windows.Forms;

namespace ScreenCapture
{
    class Program
    {
        static void Main(string[] args)
        {
            // 獲取屏幕分辨率
            int screenWidth = Screen.PrimaryScreen.Bounds.Width;
            int screenHeight = Screen.PrimaryScreen.Bounds.Height;

            // 創(chuàng)建一個(gè)Bitmap對(duì)象,用于存儲(chǔ)屏幕截圖
            Bitmap screenshot = new Bitmap(screenWidth, screenHeight);

            // 創(chuàng)建一個(gè)Graphics對(duì)象,用于繪制屏幕截圖
            Graphics graphics = Graphics.FromImage(screenshot);

            // 將屏幕內(nèi)容復(fù)制到Bitmap對(duì)象中
            graphics.CopyFromScreen(0, 0, 0, 0, new Size(screenWidth, screenHeight));

            // 保存屏幕截圖為文件
            string savePath = "screenshot.png";
            screenshot.Save(savePath);

            Console.WriteLine($"屏幕截圖已保存到:{savePath}");
        }
    }
}

這段代碼首先獲取屏幕的分辨率,然后創(chuàng)建一個(gè)Bitmap對(duì)象來(lái)存儲(chǔ)屏幕截圖。接下來(lái),創(chuàng)建一個(gè)Graphics對(duì)象,并使用CopyFromScreen方法將屏幕內(nèi)容復(fù)制到Bitmap對(duì)象中。最后,將屏幕截圖保存為文件。

注意:在運(yùn)行此代碼之前,請(qǐng)確保已經(jīng)添加了System.DrawingSystem.Windows.Forms命名空間的引用。

0