亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C# 實現截圖軟件功能實例代碼

2020-01-24 00:38:18
字體:
來源:轉載
供稿:網友

本文是利用C# 開發截圖軟件的小例子,以供學習分享使用。

思路:

  1. 截取屏幕圖片。
  2. 獲取要截取的范圍,即左上角,右下角坐標
  3. 填充到PictureBox中。
  4. 筆觸功能,熒光筆,矩形,橡皮擦,復制,保存功能

涉及的知識點:

  • MenuStrip:為窗體提供菜單系統。以ToolStripMenuItem為菜單子選項
  • ToolStrip:為 Windows 工具欄對象提供容器。以ToolStripButton【表示包含文本和圖像的可選】為工具欄子元素
  • PictureBox:表示用于顯示圖像的 Windows 圖片框控件。不過本文對此空間進行了重寫
  • Screen:可用于獲取工作屏幕區域
  • Graphics:封裝一個 GDI+ 繪圖圖面。此類不能被繼承。此類的CopyFromScreen方法用于獲取屏幕圖像
  • 鼠標事件:包括MouseDown,MouseMove,MouseUp事件,通過MouseEventArgs中的Location獲取鼠標的位置。
  • Clipboard: 提供將數據置于系統剪貼板中以及從中檢索數據的方法。此類不能被繼承。
  • Cursor:設置鼠標的顯示的光標的樣式。
  • OnPaint:重繪事件,當控件刷新時響應此事件。

效果圖如下【主要實現了截圖,保存,復制,畫矩形,筆觸,熒光筆,橡皮擦等功能】:

保存后圖片如下:

-------------------------------------------------------------------------------------------------------------------------------

核心代碼如下:

截取屏幕圖像:

public Bitmap GetScreen() {  //獲取整個屏幕圖像,不包括任務欄  Rectangle ScreenArea = Screen.GetWorkingArea(this);  Bitmap bmp = new Bitmap(ScreenArea.Width, ScreenArea.Height);  using (Graphics g = Graphics.FromImage(bmp))  {  g.CopyFromScreen(0, 0, 0, 0, new Size(ScreenArea.Width,ScreenArea.Height));  }  return bmp; }

繪制圖形功能:

#region 繪制功能 protected override void OnPaint(PaintEventArgs pe) {  base.OnPaint(pe);  Graphics g = pe.Graphics;  DrawHistory(g);  //繪制當前線  if (startDraw && this.curLine.PointList != null && this.curLine.PointList.Count > 0)  {  DrawLine(g,this.curLine);  }  if (startDraw && this.curRect.Start != null && this.curRect.End != null && this.curRect.Start != this.curRect.End) {  DrawRectangle(g, this.curRect);  } } public void DrawHistory(Graphics g) {  //繪制線歷史記錄  if (LineHistory != null)  {  foreach (HLine lh in LineHistory)  {   if (lh.PointList.Count > 10)   {   DrawLine(g, lh);   }  }  }  //繪制矩形歷史記錄  if (RectHistory != null)  {  foreach (HRectangle lh in RectHistory)  {   if (lh.Start!=null&& lh.End!=null && lh.Start!=lh.End)   {   DrawRectangle(g, lh);   }  }  } } /// <summary> /// 繪制線 /// </summary> /// <param name="g"></param> /// <param name="line"></param> private void DrawLine(Graphics g,HLine line) {  g.SmoothingMode = SmoothingMode.AntiAlias;  using (Pen p = new Pen(line.LineColor, line.LineWidth))  {  //設置起止點線帽   p.StartCap = LineCap.Round;  p.EndCap = LineCap.Round;  //設置連續兩段的聯接樣式   p.LineJoin = LineJoin.Round;  g.DrawCurve(p, line.PointList.ToArray()); //畫平滑曲線   } } /// <summary> /// 繪制矩形 /// </summary> /// <param name="g"></param> /// <param name="rect"></param> private void DrawRectangle(Graphics g, HRectangle rect) {  g.SmoothingMode = SmoothingMode.AntiAlias;  using (Pen p = new Pen(rect.LineColor, rect.LineWidth))  {  //設置起止點線帽   p.StartCap = LineCap.Round;  p.EndCap = LineCap.Round;  //設置連續兩段的聯接樣式   p.LineJoin = LineJoin.Round;  g.DrawRectangle(p, rect.Start.X, rect.Start.Y, rect.End.X - rect.Start.X, rect.End.Y - rect.Start.Y); //畫平滑曲線   } } public void Earser(Point p0) {  for (int i = lineHistory.Count - 1; i >= 0; i--)  {  HLine line = lineHistory[i];  bool flag = false;  foreach (Point p1 in line.PointList)  {   double distance = GetDistance(p0, p1);   if (Math.Abs(distance) < 6)   {   //需要刪除   flag = true;   break;   }  }  if (flag)  {   lineHistory.RemoveAt(i);  }  }  //擦除矩形  for (int i = rectHistory.Count - 1; i >= 0; i--)  {  HRectangle rect = rectHistory[i];    if (p0.X>rect.Start.X && p0.X<rect.End.X && p0.Y > rect.Start.Y && p0.Y < rect.End.Y) {      rectHistory.RemoveAt(i);  }  } } /// <summary> /// 獲取兩點之間的距離 /// </summary> /// <param name="p0"></param> /// <param name="p1"></param> /// <returns></returns> private double GetDistance(Point p0, Point p1) {  return Math.Sqrt(Math.Pow((p0.X - p1.X), 2) + Math.Pow((p0.Y - p1.Y), 2)); } #endregion

以下是源碼功能連接,需要的朋友可以自行下載。

源碼鏈接

以上所述是小編給大家介紹的C# 實現截圖軟件功能實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色系列之999| 亚洲3p在线观看| 国产在线观看精品| 欧美日韩加勒比精品一区| 日韩av资源在线播放| 国产脚交av在线一区二区| 国产亚洲精品美女久久久久| 国产精品电影网| 国产精品入口日韩视频大尺度| 久久久久久成人| 国产一区二区视频在线观看| 国产欧美日韩91| 91精品国产综合久久香蕉| 久久精品国产亚洲精品2020| 欧美日韩亚洲成人| 日本国产高清不卡| 欧美一区二区三区免费视| 一个人www欧美| 欧美性视频网站| 日韩一中文字幕| 91精品国产99久久久久久| 欧美日韩国产一区二区三区| 欧美日韩爱爱视频| 狠狠久久五月精品中文字幕| 国产精品69精品一区二区三区| 俺去啦;欧美日韩| 日本国产一区二区三区| 亚洲精品国产拍免费91在线| 欧美大秀在线观看| 欧美激情精品久久久久久| 精品精品国产国产自在线| 亚洲精品456在线播放狼人| 日本sm极度另类视频| 成人在线播放av| 国产精品视频男人的天堂| 亚洲第一页中文字幕| 国产啪精品视频网站| 91丨九色丨国产在线| 人妖精品videosex性欧美| 久热精品视频在线| 日韩在线视频播放| 国产精品影片在线观看| 综合av色偷偷网| 日本不卡视频在线播放| 国产精品久久久久久久av大片| 国产精品久久久久99| 亚洲人成绝费网站色www| 日韩免费在线观看视频| 91在线免费视频| 亚洲自拍偷拍网址| 欧美俄罗斯乱妇| 欧美色道久久88综合亚洲精品| 亚洲一区二区三区在线免费观看| 在线观看国产成人av片| 黄网站色欧美视频| 久久天天躁狠狠躁夜夜av| 按摩亚洲人久久| 欧美国产日产韩国视频| 日韩av影片在线观看| 久久久久久综合网天天| 欧美激情一二区| 成人精品在线观看| 欧美激情视频一区二区三区不卡| 亚洲国产第一页| 久久久久久久影院| 欧美劲爆第一页| 国产精品久久97| 在线成人免费网站| 久久人体大胆视频| 欧美最猛性xxxxx(亚洲精品)| 高清欧美性猛交| 亚洲欧美成人网| 亚洲精品自拍第一页| 国产精品网站入口| 欧美在线免费视频| 国产精品久久久久久av福利| 91福利视频在线观看| 久久久久久久久久亚洲| 亚洲乱码一区av黑人高潮| 欧美专区福利在线| 国产亚洲一区二区精品| 国产suv精品一区二区三区88区| 人人做人人澡人人爽欧美| 亚洲va欧美va在线观看| 高清欧美性猛交| xxxx性欧美| 成人在线播放av| 成人黄色av免费在线观看| 美女啪啪无遮挡免费久久网站| 中国日韩欧美久久久久久久久| 日韩国产高清污视频在线观看| 亚洲理论电影网| 97视频免费在线观看| 欧美一级黑人aaaaaaa做受| 欧美日韩亚洲网| 97精品视频在线观看| 国产ts人妖一区二区三区| 亚洲精品国产综合久久| 青青草成人在线| 亚洲人成欧美中文字幕| 国产精品人成电影在线观看| 亚洲视频欧美视频| 欧美日本国产在线| 亚洲精品国产美女| 国产亚洲精品91在线| 亚洲精品久久久久久久久久久| www.亚洲男人天堂| 精品国产欧美一区二区三区成人| 国产精品成人一区二区三区吃奶| 亚洲影院色无极综合| 2019中文字幕免费视频| 亚洲免费精彩视频| 日本19禁啪啪免费观看www| 成人做爰www免费看视频网站| 亚洲国语精品自产拍在线观看| 欧美成人午夜视频| 亚洲成人黄色网| 亚洲视频在线观看免费| 91在线精品播放| 国产伦精品一区二区三区精品视频| 韩国日本不卡在线| 国产精品视频中文字幕91| 亚洲成人三级在线| 激情懂色av一区av二区av| 国产97在线播放| 高清日韩电视剧大全免费播放在线观看| 国产精品欧美日韩久久| 91久久在线视频| 国产精品日韩欧美| 欧美福利小视频| 国产成人久久久| 欧美国产中文字幕| 色婷婷av一区二区三区在线观看| 亚洲欧美一区二区精品久久久| 欧美日韩不卡合集视频| 日本精品在线视频| 久久九九全国免费精品观看| 久久精品这里热有精品| 久久久久北条麻妃免费看| 精品五月天久久| 成人国产精品一区二区| 亚洲女成人图区| 久久久国产一区二区| 精品美女国产在线| 国产精品视频精品| 在线观看国产欧美| 亚洲国产天堂网精品网站| 亚洲欧美国产制服动漫| 欧美性理论片在线观看片免费| 精品国偷自产在线视频| 亚洲va码欧洲m码| 欧美福利在线观看| 欧美日韩中文字幕在线| 北条麻妃在线一区二区| xx视频.9999.com| 久久久国产精品视频| 国产成人短视频| 日韩美女写真福利在线观看| 久热精品在线视频| 久久这里只有精品99| 日韩欧美精品网址| 久久精品久久久久电影| 一区二区日韩精品| 欧美老少做受xxxx高潮|