Feedback

C# - Abmessungen von Strings in WPF ermitteln

Veröffentlicht von am 26.11.2013
(0 Bewertungen)
In WPF kann man sehr einfach die benötigte Größe eines Strings heraus finden, indem man die FormattedText-Klasse einsetzt.

Diese Erweiterungsmethode für den Typ System.String vereinfacht den Aufruf zum messen.
/// <summary>
/// Ermittelt die Größe einer Zeichenfolge, wenn diese ausgegeben wird.
/// </summary>
/// <param name="s">Die zu messende Zeichenfolge.</param>
/// <param name="font">Die bei der Messung zu verwendende Schriftart.</param>
/// <param name="fontSize">Die bei der Messung zu verwendende Schriftgröße.</param>
/// <returns>Die Größe der angegebenen Zeichenfolge unter Verwendung von <paramref name="font"/> und <paramref name="fontSize"/>.</returns>
public static Size PrintedSize(this string s, FontFamily font, double fontSize)
{
    FormattedText formatted = new FormattedText(s,
            CultureInfo.CurrentCulture,
            System.Windows.FlowDirection.LeftToRight,
            font.GetTypefaces().First(),
            fontSize,
            Brushes.Black);
    return new Size(formatted.Width, formatted.Height);
}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!