Perché textrenderer.MeasureText non funziona correttamente?
-
27-10-2019 - |
Domanda
Voglio misurare l'altezza del testo dato una certa larghezza della tela disponibile. Il testo che passo è davvero lungo e so che avverrà. A tal fine, chiamo quanto segue:
using System.Windows.Forms;
...
string text = "Really really long text that is sure to wrap...";
Font font = new Font("Arial", 14);
Size canvas = new Size(1100, 850);
Size size = TextRenderer.MeasureText(text, font, canvas);
Non importa cosa passo per la tela, restituisce sempre 14 per size.Height
.
Mi manca qualcosa di semplice?
Soluzione
Per favore, usa il TextFormatFlags Misura il parametro come mostrato di seguito:
Size size = TextRenderer.MeasureText(text, font, canvas, TextFormatFlags.WordBreak);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow