Feedback

UWP: Win2D Stringgröße ermitteln

Sprache: C#

Win2D ist Microsofts Ersatz für das "Paint"-Event in UWP Apps. Es funktioniert auf den ersten Blick ziemlich ähnlich, aber eben doch anders. Dieses Snippet soll zeigen wie man mit Hilfe des DrawingContexts die Größe eines Strings in einer bestimmten Schriftart ermittelt, dies geschieht über das CanvasTextFormat. [b]Benötigte Namespaces[/b] Microsoft.Graphics.Canvas.Text Microsoft.Graphics.Canvas.UI.Xaml [b]Benötigtes NuGet Pakage[/b] Win2D.uwp http://bit.ly/1TDsCeB
private void CanvasControl_Draw(CanvasControl sender, CanvasDrawEventArgs args)
{
    var cds = args.DrawingSession;

    var text = "Hello World!";

    var ctFormat = new CanvasTextFormat { FontSize = 30.0f, WordWrapping = CanvasWordWrapping.NoWrap };
    var ctLayout = new CanvasTextLayout(cds, text, ctFormat, 0.0f, 0.0f);

    var width = ctLayout.DrawBounds.Width;
    var height = ctLayout.DrawBounds.Height;

    //mache irgend etwas mit width und height
}
private void CanvasControl_Draw(CanvasControl sender, CanvasDrawEventArgs args)
{
    var cds = args.DrawingSession;

    var text = "Hello World!";

    var ctFormat = new CanvasTextFormat { FontSize = 30.0f, WordWrapping = CanvasWordWrapping.NoWrap };
    var ctLayout = new CanvasTextLayout(cds, text, ctFormat, 0.0f, 0.0f);

    var width = ctLayout.DrawBounds.Width;
    var height = ctLayout.DrawBounds.Height;

    //mache irgend etwas mit width und height
}