WPF编程,将控件所呈现的内容保存成图像的一种方法。
生活随笔
收集整理的這篇文章主要介紹了
WPF编程,将控件所呈现的内容保存成图像的一种方法。
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
WPF編程,將控件所呈現的內容保存成圖像的一種方法。 原文:WPF編程,將控件所呈現的內容保存成圖像的一種方法。
版權聲明:我不生產代碼,我只是代碼的搬運工。 https://blog.csdn.net/qq_43307934/article/details/87278138
實現只對控件進行截圖,可以利用RenderTargetBitmap類獲取Visual對象的視覺效果,從而實現對控件截圖效果。
參考地址:https://www.cnblogs.com/TianFang/archive/2012/10/07/2714140.html
例子:這里將控件的顯示內容,保存為PNG的圖片到本地。?
1、代碼
//定義一個文件類型的枚舉public enum ImageFormat{JPG, BMP, PNG, GIF, TIF}//轉為圖片并保存public void GenerateImage(BitmapSource bitmap, ImageFormat format, Stream destStream){BitmapEncoder encoder = null;switch (format){case ImageFormat.JPG:encoder = new JpegBitmapEncoder();break;case ImageFormat.PNG:encoder = new PngBitmapEncoder();break;case ImageFormat.BMP:encoder = new BmpBitmapEncoder();break;case ImageFormat.GIF:encoder = new GifBitmapEncoder();break;case ImageFormat.TIF:encoder = new TiffBitmapEncoder();break;default:throw new InvalidOperationException();}encoder.Frames.Add(BitmapFrame.Create(bitmap));encoder.Save(destStream);}?2、調用
其中此函數有五個參數:
?分別是圖片的寬、圖片的高、水平分辨率、垂直分辨率、位圖的格式。
private void Button_Click(object sender, RoutedEventArgs e){RenderTargetBitmap rtb = new RenderTargetBitmap((int)this.Width, (int)this.Height, 96, 96, PixelFormats.Pbgra32);rtb.Render(allview);using (Stream fs = File.Create(@"D:\test.png")){GenerateImage(rtb, ImageFormat.PNG, fs);}}?
posted on 2019-04-18 12:08 NET未來之路 閱讀(...) 評論(...) 編輯 收藏轉載于:https://www.cnblogs.com/lonelyxmas/p/10728826.html
總結
以上是生活随笔為你收集整理的WPF编程,将控件所呈现的内容保存成图像的一种方法。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HashMap和Hashtable 线程
- 下一篇: SQL过滤字符后手工注入漏洞测试(第1题