添加引用
using System.Data;
using System.Drawing.Imaging;
調用API並儲存圖片
[System.Runtime.InteropServices.DllImportAttribute("gdi32.dll")]
private static extern bool BitBlt(
IntPtr hdcDest, //目的DC的控制代碼
int nXDest, //目的圖形的左上方的x座標
int nYDest, //目的圖形的左上方的y座標
int nWidth, //目的圖形的矩形寬度
int nHeight, //目的圖形的矩形高度
IntPtr hdcSrc, //源DC的控制代碼
int nXSrc, //源圖形的左上方的x座標
int nYSrc, //源圖形的左上方的x座標
System.Int32 dwRop //光柵作業碼
);
private void button1_Click(object sender, System.EventArgs e)
{
Graphics g1 = this.CreateGraphics();//獲得表單繪圖物件
Image MyImage = new Bitmap(this.ClientRectangle.Width, this.ClientRectangle.Height, g1);
Graphics g2 = Graphics.FromImage(MyImage);//建立位元影像繪圖物件
IntPtr dc1 = g1.GetHdc();//獲得表單的上下文裝置
IntPtr dc2 = g2.GetHdc();//獲得位元影像檔案的上下文裝置
BitBlt(dc2, 0, 0, this.ClientRectangle.Width, this.ClientRectangle.Height, dc1, 0, 0, 13369376);//寫入到位元影像
g1.ReleaseHdc(dc1);//釋放表單的上下文裝置
g2.ReleaseHdc(dc2);//釋放位元影像檔案的上下文裝置
MyImage.Save(@"c:/Captured.jpg", ImageFormat.Jpeg);//儲存為jpeg檔案
MessageBox.Show("儲存圖片結束!");
}