Firemonkey 应用程序:TMemo 中的等宽字体?

Firemonkey app: monospace font in TMemo?

是否可以在 Firemonkey(使用 Delphi 10.2 Tokyo 开发)应用程序的 TMemo 中 set/use 等宽字体。

我们尝试了:

TextSettings.Font.Family := 'Courier New';  
TextSettings.Font.Family := 'Courier';  
TextSettings.Font.Family := 'Monospace';  

但是当我们运行 Android 中的应用程序时,文本字体不是等宽的。

首先,不要使用 Delphi 东京为 android 做任何申请,它还不能工作,你的应用程序会非常非常慢!你必须等待更新。

这是 android 上可用的所有字体:

// +---------------------------------------------------------------+
// ¦    ¦ FONT FAMILY                ¦ TTF FILE                    ¦
// ¦----+----------------------------+-----------------------------¦
// ¦  1 ¦ casual                     ¦ ComingSoon.ttf              ¦
// ¦  2 ¦ cursive                    ¦ DancingScript-Regular.ttf   ¦
// ¦  3 ¦ monospace                  ¦ DroidSansMono.ttf           ¦
// ¦  4 ¦ sans-serif                 ¦ Roboto-Regular.ttf          ¦ Roboto-Regular.ttf / Roboto-Bold.ttf / Roboto-BoldItalic.ttf / Roboto-Italic.ttf
// ¦  5 ¦ sans-serif-black           ¦ Roboto-Black.ttf            ¦ Roboto-Black.ttf / Roboto-BlackItalic.ttf
// ¦  6 ¦ sans-serif-condensed       ¦ RobotoCondensed-Regular.ttf ¦ RobotoCondensed-Regular.ttf / RobotoCondensed-Bold.ttf / RobotoCondensed-BoldItalic.ttf / RobotoCondensed-Italic.ttf
// ¦  7 ¦ sans-serif-condensed-light ¦ RobotoCondensed-Light.ttf   ¦ RobotoCondensed-Light.ttf /  RobotoCondensed-LightItalic.ttf
// ¦  8 ¦ sans-serif-light           ¦ Roboto-Light.ttf            ¦ Roboto-Light.ttf / Roboto-LightItalic.ttf
// ¦  9 ¦ sans-serif-medium          ¦ Roboto-Medium.ttf           ¦ Roboto-Medium.ttf / Roboto-MediumItalic.ttf
// ¦ 10 ¦ sans-serif-smallcaps       ¦ CarroisGothicSC-Regular.ttf ¦
// ¦ 11 ¦ sans-serif-thin            ¦ Roboto-Thin.ttf             ¦ Roboto-Thin.ttf / Roboto-ThinItalic.ttf
// ¦ 12 ¦ serif                      ¦ NotoSerif-Regular.ttf       ¦
// ¦ 13 ¦ serif-monospace            ¦ CutiveMono.ttf              ¦
// +---------------------------------------------------------------+

所以试试 serif-monospace

我是这样解决问题的:

{$IFDEF MSWINDOWS}
    Memo1.TextSettings.Font.Family := 'Courier New';
    Memo1.StyledSettings :=  Memo1.StyledSettings - [TStyledSetting.Family]
{$ENDIF}
{$IFDEF ANDROID}
    Memo1.TextSettings.Font.Family := 'monospace';
    Memo1.StyledSettings :=  Memo1.StyledSettings - [TStyledSetting.Family]
{$ENDIF}