可以使用DrawingContext的DrawText方法。这个方法允许您指定要绘制的文字内容、文字格式、文字笔刷(颜色或画笔)等信息。
using System;
using System.Windows;
using System.Windows.Media;public class MyDrawingVisual : DrawingVisual
{public void DrawTextWithFormatting(){using (DrawingContext drawingContext = RenderOpen()){// 创建文字格式Typeface typeface = new Typeface(new FontFamily("Arial"), FontStyles.Italic, FontWeights.Bold, FontStretches.Normal);FormattedText formattedText = new FormattedText("Hello, World!", // 文字内容System.Globalization.CultureInfo.CurrentCulture,FlowDirection.LeftToRight,typeface,36, // 文字大小Brushes.Black // 文字笔刷);// 指定文字的位置Point textPosition = new Point(50, 50);// 绘制文本drawingContext.DrawText(formattedText, textPosition);}}
}public class MainWindow : Window
{public MainWindow(){// 创建一个画布DrawingVisual drawingVisual = new MyDrawingVisual();// 创建主窗口内容((MyDrawingVisual)drawingVisual).DrawTextWithFormatting();// 创建一个Image对象,用于显示绘制的图像Image imageControl = new Image();// 使用DrawingVisual对象创建一个DrawingImageDrawingImage drawingImage = new DrawingImage(drawingVisual.Drawing);// 将DrawingImage设置为Image控件的源imageControl.Source = drawingImage;// 将Image添加到主窗口中Content = imageControl;}
}// 在这里调用主窗口
public class Program
{[STAThread]public static void Main(string[] args){MainWindow mainWindow = new MainWindow();mainWindow.ShowDialog();}
}