[修正] Firemonkey Android 文字斜粗体显示不全的问题

Posted 龟山Aone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[修正] Firemonkey Android 文字斜粗体显示不全的问题相关的知识,希望对你有一定的参考价值。

问题:Firemonkey android 平台显示斜粗体文字时,文字右方会有显示不全的问题。

 

修正代码:

请将 FMX.FontGlyphs.Android.pas 复制到自己的工程目录下,再修改如下代码:

function TAndroidFontGlyphManager.DoGetGlyph

... 略 ...

      if Bounds.left < 0 then
        Width := Width - Bounds.left;

{+++>}
      // 加入修正代码: 文字斜粗显示 by Aone 2017.05.26
      if FPaint.getTypeface.isItalic then
      begin
           if FPaint.getTypeface.isBold then
                Width := Round(Width * 1.2375)
           else Width := Round(Width * 1.125);
      end;
{<+++}

      Bitmap := TJBitmap.JavaClass.createBitmap(Width, Height, TJBitmap_Config.JavaClass.ARGB_8888);

... 略 ...

end;

 

修正效果:

未修正 修正后

以上是关于[修正] Firemonkey Android 文字斜粗体显示不全的问题的主要内容,如果未能解决你的问题,请参考以下文章

[修正] Firemonkey TSelection 控件等比缩放时,左下角拉动问题

[修正] Berlin Firemonkey Windows 控件左方显示虚线问题

[修正] Firemonkey 中英文混排折行问题(移动平台)

[修正] Firemonkey Windows & macOS 平台下 Edit & Memo 中文输入后会取消原选取文字的 BUG

[原创] Firemonkey 解决 Canvas 几何绘图质量问题(移动平台)

Delphi xe7 FireMonkey / Mobile (Android, iOS)生成 QR Code完整实例