タイトルのとおり、.NET 4.5には、高さをpixで表示できるフォントクラスがありますが、WinRTではどうでしょうか。
使用するピクセルを取得するために使用できるAPIはありますか?
タイトルのとおり、.NET 4.5には、高さをpixで表示できるフォントクラスがありますが、WinRTではどうでしょうか。
使用するピクセルを取得するために使用できるAPIはありますか?
.NET API for Windows Store AppsにはFormattedTextクラスすら存在しないため、回避策はTextBlockを使用することです。
TextBlock dummyTextBlock = new TextBlock();
dummyTextBlock.FontFamily = new FontFamily("Tahoma");
dummyTextBlock.FontSize = 18;
dummyTextBlock.FontStyle = FontStyle.Normal;
dummyTextBlock.FontWeight = FontWeights.Bold;
dummyTextBlock.Text = "X";
dummyTextBlock.Measure(new Size(0,0));
dummyTextBlock.Arrange(new Rect(0,0,0,0));
double width = dummyTextBlock.ActualWidth;
double height = dummyTextBlock.ActualHeight;
これにより、テキストの高さ(および幅)がどのように表示されるかがわかります。