Android - 将多种字体样式组合成一种字体(Typeface)

2023-12-28

我有几种不同风格的字体,可以说:“MyFont_default.otf”,“MyFont_italic.otf”,“MyFont_bold.otf”

通常,我会像这样设置 TextView 的字体:

Typeface tf=Typeface.createFromAsset(context.getAssets(), "MyFont_italic.otf");
textView.setTypeface(tf);

我的问题是:是否可以将所有这些字体组合成一种字体,例如“MyFont”,并根据 XML 布局文件中定义的 TextView 样式(斜体、粗体),以适当的方式显示 TextView字体?


我没有适当的声誉来发表评论,但我可以确认,这很有效。 使用 FontForge(适用于 Windows 的二进制文件):

  1. 使用 FontForge 打开多个 .otf 文件(常规、粗体、斜体)。
  2. 确保选择显示“常规”版本字体的窗口
  3. 从该窗口使用“文件”>“保存 ttc”
  4. 看到保存对话框中确实列出了其他子字体(粗体、斜体)
  5. 在Android中保存并使用这个ttc文件

我用 TextView 中显示的 html 文本对其进行了测试:<b>Test</b> Test <i>Test</i>-> "TestTest Test”,以前在 Android 2.3.7 中不起作用,使用此 ttc 字体,所有三个版本的文本都可以完美显示。

正如我所说,导出时选择常规字体很重要,因为这是 Android 用作“默认”的字体(我首先从粗体版本导出,结果都是粗体)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android - 将多种字体样式组合成一种字体(Typeface) 的相关文章

随机推荐

  • C 中的位域,其结构包含结构体的并集

    嗯 为什么我打印的时候会这样sizeof struct MyStruct 该代码输出 3 而不是 2 pragma pack push 1 struct MyStruct unsigned char a 6 union struct uns
  • 如何在Grapesjs中添加iframe?

    我尝试了一些插件 但无法遵循 基本上我想要一个iframe添加和预览播客和其他内容 是否有任何像 youtube 块一样的 iframe 块与 GrapesJS 一起提供 据我所知 目前还没有一个好的grapesjs iframe 插件 如
  • 如何通过 shell 调用在 SWI-Prolog 中显示具有多个自由变量的模式匹配目标的结果?

    让我们使用以下 prolog 基础 father anakinSkywalker princessLeia father anakinSkywalker lukeSkywalker saysOhNo lukeSkywalker 科学爱好者
  • spring security css样式不起作用

    我在使用 spring security 3 0 7 版本 将 css 应用到网页时遇到问题 我有以下配置
  • 当所有值的总和超过双精度限制时,计算平均值的好解决方案是什么?

    我需要计算一组非常大的双精度数 10 9 值 的平均值 这些值的总和超过了双精度数的上限 所以有人知道计算平均值而不需要计算总和的任何巧妙的小技巧吗 我正在使用Java 1 5 You can 迭代计算平均值 http www heikoh
  • 将字典列表转换为字典字典的优雅方法

    我有一个字典列表 如下例所示 listofdict name Foo two Baz one Bar name FooFoo two BazBaz one BarBar 我知道 名称 存在于每个字典 以及其他键 中 并且它是唯一的并且不会出
  • CSS 保留宽高比但填充父级 div

    基本上 我有一个想要用圆圈遮盖的图像 div class thumbnail mask img class thumbnail pic src image jpeg div CSS 我使用 LESS 非常简单 thumbnail mask
  • Spark 字数统计指标示例

    我阅读了 指标 部分火花网站 http spark apache org docs 1 3 1 monitoring html 我想在字数统计示例中尝试一下 但我无法使其工作 Spark conf metrics properties En
  • 获取字典的随机子集[重复]

    这个问题在这里已经有答案了 我有一本非常大的字典 我想提取一个子样本 然后我想对其进行迭代 我试过 import random dictionary a 1 b 2 c 3 d 4 e 5 keys random sample dictio
  • 单个线程池的设计比多个线程池更好吗

    Java 中拥有多个线程池有哪些优点和缺点 我见过代码中有多个线程池用于不同 类型 的任务 我不确定它是更好的设计还是只是开发人员懒惰 一个例子是使用调度线程池执行器 http docs oracle com javase 7 docs a
  • React-Router 外部链接

    由于我使用 React Router 来处理 React 应用程序中的路由 我很好奇是否有一种方法可以重定向到外部资源 说有人打 example com privacy policy 我希望它重定向到 example zendesk com
  • 使用 jQuery 旋转图像 OnClick?

    我有这个代码 http jsfiddle net Q4PUw 2 http jsfiddle net Q4PUw 2 因此 这是一个简单的从隐藏到可见的 jQuery 脚本 我想知道如何做是在 扩展一 类中放置一个图像 该图像将旋转 90
  • Gmail如何在页面之间保留复选框选择

    在 gmail 中 如果您选中标记电子邮件 4 然后移动到不同的 50 或 25 条记录集并标记选择 26 那么如果您来回移动 4 和 26 都会保留 谷歌是如何做到这一点的 是否可以在仅包含 50 条记录的页面中执行类似的操作 并且当单击
  • 如何在 Jenkins 中配置 Selenium HTML 报告

    我们在 Jenkins 中配置了 Java MOJO 一旦在 CI 中构建代码 就会生成可靠的报告 我们有 Junit 和 Selenium 测试用例来测试应用程序 我需要以 HTML 格式呈现来自测试用例的结果 Jenkins 有没有可用
  • Laravel 5 在两列上有很多关系

    两列上是否可以有 hasMany 关系 我的表有两列 user id and related user id 我希望我的关系与任一列相匹配 在我的模型中我有 public function userRelations return this
  • 自定义函数中的序列对象

    我试图有条件地 通过参数 从 4 个序列中获取下一个值 在自定义标量值函数中 我尝试使用 序列的下一个值 序列定义为 CREATE SEQUENCE dbo sequence1 AS int START WITH 1 INCREMENT B
  • Pandas - 在索引中使用 merge_asof 函数

    代码是 import numpy as np import pandas as pd dateparse lambda x pd datetime strptime x d m Y H M vento pd read csv dados t
  • BigDecimal/双精度 - 数字向上舍入更高

    下面的第二个方法调用 setYCooperative 得到错误的值 89 99999435599995 而不是 89 99999435599994 第一次调用 setXCooperative 获得正确的值 29 99993874900002
  • JavaScript 有没有办法定期调用函数?

    JavaScript 有没有办法定期调用函数 The setInterval 方法 重复调用函数或执行代码片段 每次调用之间有固定的时间延迟 它返回一个唯一标识该间隔的间隔 ID 因此您可以稍后通过调用clearInterval 将其删除
  • Android - 将多种字体样式组合成一种字体(Typeface)

    我有几种不同风格的字体 可以说 MyFont default otf MyFont italic otf MyFont bold otf 通常 我会像这样设置 TextView 的字体 Typeface tf Typeface create