如何在WinRT应用中获得字体的大小(以像素为单位)
本文关键字:像素 为单位 字体 WinRT 应用 | 更新日期: 2023-09-27 18:05:03
作为标题,在。net 4.5中,我们有一个font类,它可以给你以像素为单位的高度,但是在WinRT中呢?
是否有任何API,我可以使用它来获得它使用的像素?
由于在Windows Store应用程序的。net API中甚至不存在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;
显示文本的高度(和宽度)