In WPF how to give the InteropBitmap drawing font

Total Post:154

Points:1086
WPF 
WPF
 1786  View(s)
Ratings:
Rate this:

ex winform

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));

In the WPF on how the InteropBitmap to do the same thing?

  1. Post:378

    Points:2694
    Re: In WPF how to give the InteropBitmap drawing font

    Hi Manoj,


    The graphics object in Wpf is different than Winforms since Wpf uses Vector Graphics. In Wpf you will be using a DrawingVisual, DrawingContext, FormattedText and a BitmapImage, the DrawingContext is equivalent to the Graphics object in Winforms. This is a quick example to show what I mean.

    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;
    }

      Modified On Mar-31-2018 01:30:47 AM

Answer