gpt4 book ai didi

Android:.ttf >3MB 的字体呈现问题

转载 作者:太空宇宙 更新时间:2023-11-03 11:23:14 26 4
gpt4 key购买 nike

我的 Android 应用程序需要支持各种语言(如中文等)。其中大部分位于 Ascender 的 DroidSansFallback.ttf 文件中。

参见 https://android.googlesource.com/platform/frameworks/base/+/master/data/fonts

在某些 Android 手机上,有 DroidSansFallback.ttf,但缺少许多字形,例如在美国发行的 NexusOne 上。根本没有亚洲字体字形,大部分只有拉丁文和相关字符。

那怎么办呢?

我将我自己的 DroidSansFallback.ttf 副本添加到“ Assets ”(我还尝试了来自其他来源的其他字体)并在运行时使用字体类对其进行设置。

对于一些手机和一些 .ttf 文件,字体渲染完全搞砸了,这意味着字母只是一行中的一些点。

经过深入分析,问题归结为:

  1. 小的 .ttf 文件似乎总是有效 (<200kB)
  2. 大型 .ttf 文件根本不起作用 (>3MB)
  3. 如果手机安装了完整的 DroidSansFallback.ttf(大约 3.5MB),即使是 1 或 2MB 的字体也会搞砸。如果手机只安装了 DroidSansDallback.ttf 的“精简版”(约为 1MB),则 3MB 的字体可以正常工作。

这里有什么问题吗?我错过了什么吗?看起来所有安装/使用的字体加在一起不能大于 somehwat ~4MB。

有人遇到过同样的问题吗?我在 NexusOne (2.1)、HTC Hero(2.1)、SonyEricson Xperia (1.6) 和 Motorola MileStone(2.0) 上试过,都表现出相同的行为。

感谢任何提示。

最佳答案

您的设备内存不足。

您列出的所有设备都很旧。堆大小约为 12MB。

如果可能,请考虑使用已预渲染中文文本的 PNG。

关于Android:.ttf >3MB 的字体呈现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3753436/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com