Avalonia 将控件导出为图片的一种方式
Avalonia 将控件导出为图片的一种方式
零、开门见山
使用以下代码将 Avalonia 控件导出成为图片。
/// <summary>
/// 将控件导出为图片。
/// </summary>
/// <param name="visual">控件对象。</param>
/// <param name="filePath">导出的文件路径。</param>
public void ExportImage(Visual visual, string filePath)
{
// 获得控件的尺寸。
var width = (int)visual.Bounds.Width;
var height = (int)visual.Bounds.Height;
var visualBrush = new VisualBrush(this);
var renderTargetBitmap = new RenderTargetBitmap(new PixelSize(width, height));
using var canvas = renderTargetBitmap.CreateDrawingContext(false);
canvas.DrawRectangle(visualBrush, null, new Rect(0, 0, width, height));
renderTargetBitmap.Save(filePath);
}
一、使用例
// 在 MainView.axaml.cs 中的某个按钮事件中写上这样的调用。
ExportImage(this, "C://test.png");
二、截图效果
1. 导出的效果
以下是截图的效果。

2. 本来应用程序的界面
以下是程序本身的界面效果。


浙公网安备 33010602011771号