如何获取系统的隐藏式字幕字体大小?
How to get system's closed caption font size?
我想获取系统的隐藏式字幕字体样式,我参考了doc。到目前为止一切都很好,除了字体大小。
根据doc,ClosedCaptionProperties.FontSize
returns枚举ClosedCaptionSize
,见代码
switch (Windows.Media.ClosedCaptioning.ClosedCaptionProperties.FontSize)
{
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.FiftyPercent:
richtextblock.FontSize = 50;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredPercent:
richtextblock.FontSize = 100;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredFiftyPercent:
richtextblock.FontSize = 150;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.TwoHundredPercent:
richtextblock.FontSize = 200;
break;
default:
richtextblock.FontSize = 100;
break;
}
我把FontSize
设为相应的数字,虽然我知道是百分比。
最终结果与系统不同
那么这些枚举的确切 FontSize
是什么???
枚举没有给出具体数值,而是一个百分比。显然你也注意到了这一点。
百分比取决于参考值。一般来说,UWP最常见的默认字体大小是14,但是在MediaTransportControls中,默认字体大小通常是12。
所以Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredFiftyPercent
应该是12*1.5=18.
更新
对不起,关于CC的字体大小,我需要进一步解释。
CC的大小受多种因素影响:
1.字幕文件本身的设置。
例如SRT文件支持字体设置。 <font color="red">{\fs25}
表示FontSize
为25,Foreground
为红色的一行字幕。
2。受当前大小影响window
显示字幕的控件集成在TimedTextSourcePresenter
(MediaPlayerElement 中的Grid)中。对于 TimedTextSourcePresenter
,您可以将其视为 ViewBox
。它会根据当前控件的大小缩放内部元素。
综上所述,MediaPlayerElement
中的隐藏式字幕有一个基本字体大小,但这个字体大小不一定等于最终呈现的字体大小。
谢谢。
我想获取系统的隐藏式字幕字体样式,我参考了doc。到目前为止一切都很好,除了字体大小。
根据doc,ClosedCaptionProperties.FontSize
returns枚举ClosedCaptionSize
,见代码
switch (Windows.Media.ClosedCaptioning.ClosedCaptionProperties.FontSize)
{
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.FiftyPercent:
richtextblock.FontSize = 50;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredPercent:
richtextblock.FontSize = 100;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredFiftyPercent:
richtextblock.FontSize = 150;
break;
case Windows.Media.ClosedCaptioning.ClosedCaptionSize.TwoHundredPercent:
richtextblock.FontSize = 200;
break;
default:
richtextblock.FontSize = 100;
break;
}
我把FontSize
设为相应的数字,虽然我知道是百分比。
最终结果与系统不同
那么这些枚举的确切 FontSize
是什么???
枚举没有给出具体数值,而是一个百分比。显然你也注意到了这一点。
百分比取决于参考值。一般来说,UWP最常见的默认字体大小是14,但是在MediaTransportControls中,默认字体大小通常是12。
所以Windows.Media.ClosedCaptioning.ClosedCaptionSize.OneHundredFiftyPercent
应该是12*1.5=18.
更新
对不起,关于CC的字体大小,我需要进一步解释。
CC的大小受多种因素影响:
1.字幕文件本身的设置。
例如SRT文件支持字体设置。 <font color="red">{\fs25}
表示FontSize
为25,Foreground
为红色的一行字幕。
2。受当前大小影响window
显示字幕的控件集成在TimedTextSourcePresenter
(MediaPlayerElement 中的Grid)中。对于 TimedTextSourcePresenter
,您可以将其视为 ViewBox
。它会根据当前控件的大小缩放内部元素。
综上所述,MediaPlayerElement
中的隐藏式字幕有一个基本字体大小,但这个字体大小不一定等于最终呈现的字体大小。
谢谢。