0

ex winform:</p>

Graphics g = Graphics.FromImage(newimg);
String str = "hello world";
Font font = new Font("Arial", 30);
SolidBrush sbrush = new SolidBrush(Color.Black);
g.DrawString(str, font, sbrush, new PointF(100, 120));

InteropBitmap が同じことを行う方法についての WPF では?

4

1 に答える 1

0

Wpf は Vector Graphics を使用するため、Wpf のグラフィックス オブジェクトは Winforms とは異なります。Wpf では、DrawingVisualDrawingContextFormattedText、およびBitmapImageを使用します。 DrawingContext は、Winforms の Graphics オブジェクトに相当します。これは、私の言いたいことを示す簡単な例です。

public MainWindow()
{
    InitializeComponent();

    Grid myGrid = new Grid();
    BitmapImage bmp = new BitmapImage(new Uri(@"C:\temp\test.jpg")); //Use the path to your Image 
    DrawingVisual dv = new DrawingVisual();
    DrawingContext dc = dv.RenderOpen();
    dc.DrawImage(bmp, new Rect(100, 100, 300, 300));

    dc.DrawText(new FormattedText("Hello World",
                CultureInfo.GetCultureInfo("en-us"),
                FlowDirection.LeftToRight,
                new Typeface("Arial"),
                30, System.Windows.Media.Brushes.Black),
                new System.Windows.Point(100, 120));

    dc.Close();

    myGrid.Background = new VisualBrush(dv); 
    this.Content = myGrid;
}
于 2013-01-08T07:59:35.070 に答える