系统字型名称在每个平台的取得方式不尽相同,以下示范如何在 iOS 取得系统内所有字型的名称:
uses
// 加入下面二个 uses 文件
iOSapi.UIKit,
iOSapi.Foundation,
开一个新工程,放一个按钮 TButton 及 TMemo,在按钮事件内加入下面代码:
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer;
FontNames: NSArray;
begin
FontNames := TUIFont.OCClass.familyNames;
for i:= to FontNames.count - do
Memo1.Lines.Add(i.ToString + # + UTF8ToString(TNSString.Wrap(FontNames.objectAtIndex(i)).UTF8String));
end;
运行结果:
其它平台做法:
- Windows
- MacOS
https://delphiscience.wordpress.com/2012/11/20/getting-system-fonts-list-in-firemonkey-the-new-tplatformextensions-class/ - Android (下列讨论区内,取得 /system/fonts 目录内字型档方式)
http://stackoverflow.com/questions/3532397/how-to-retrieve-a-list-of-available-installed-fonts-in-android
/system/fonts