我怎么知道 TFont 名称是否真正受支持?
How do I know if a TFont Name is truly supported?
当我将 TRichEdit
控件的 TFont
Name
属性 设置为 "Courier" 时,字体变为 Courier。
Edit->Font->Name = "Courier";
如果我想使用一种我不确定系统是否支持它的字体(例如,在较旧的 OS 上)怎么办?
据我目前所知,如果我为 TFont 属性 分配一个 'unknown' 名称,实际字体不会改变,系统会处理它并坚持使用以前的字体,但是我如何以编程方式检查它?
我想知道字体是否真的改变了(因为字体可用/已安装)?
或者我是否需要查询 Screen->Fonts 以查明名称是否在列表中?
仅供参考:使用 Borland C++ Builder (2009),但我确定也与 Delphi 相关。
TScreen::Fonts 表示一个 TStrings
列表,其中包含系统中安装的字体的名称(实际名称而不是文件名)。
使用其 IndexOf()
方法来测试您的字体是否存在:
if (Screen->Fonts->IndexOf("Courier") != -1)
{
ShowMessage("Font installed");
}
当我将 TRichEdit
控件的 TFont
Name
属性 设置为 "Courier" 时,字体变为 Courier。
Edit->Font->Name = "Courier";
如果我想使用一种我不确定系统是否支持它的字体(例如,在较旧的 OS 上)怎么办? 据我目前所知,如果我为 TFont 属性 分配一个 'unknown' 名称,实际字体不会改变,系统会处理它并坚持使用以前的字体,但是我如何以编程方式检查它?
我想知道字体是否真的改变了(因为字体可用/已安装)?
或者我是否需要查询 Screen->Fonts 以查明名称是否在列表中?
仅供参考:使用 Borland C++ Builder (2009),但我确定也与 Delphi 相关。
TScreen::Fonts 表示一个 TStrings
列表,其中包含系统中安装的字体的名称(实际名称而不是文件名)。
使用其 IndexOf()
方法来测试您的字体是否存在:
if (Screen->Fonts->IndexOf("Courier") != -1)
{
ShowMessage("Font installed");
}