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);
}
Abgelegt unter
WPF,
TextBlock,
Trim,
Trimming,
Texttrimming,
Länge,
MeasureString,
messen,
Größe,
measure,
extension,
Erweiterungsmethode,
string.
Kommentare zum Snippet