如何使用粗体字创建自定义字体系列

15 浏览
0 Comments

如何使用粗体字创建自定义字体系列

我正在尝试根据这个文档https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html创建自定义字体系列。问题是,在XML中没有粗体属性,所以我无法在程序中设置它。是否可以在XML中设置字体?

0
0 Comments

如何创建带有粗体字体的自定义字体系列

在使用同一字体系列资源的情况下,可以参考以下方法来为字体设置粗体样式。

首先,假设你有两个字体文件:serif_normal.ttf和serif_bold.ttf,并且你创建了一个名为serif_font.xml的字体系列资源文件,内容如下:




要引用粗体或正常字体,可以使用android:textStyle属性:

android:textStyle="normal | bold"

如果需要,你还可以创建一个自定义样式:


点击[这里](https://stackoverflow.com/q/19691530/9636618)查看完整描述。

0
0 Comments

如何创建具有粗体字体的自定义字体系列?

问题的出现原因是所提供的链接已经失效,无法下载所需的字体文件。

解决方法是通过其他途径获取Robote-Bold字体文件,并将其粘贴到res>font文件夹中。然后可以在xml中使用这种字体,方法如下:


另外,也可以设置一个简单的字体,并使用android:textStyle="bold"来使文本加粗。

请注意,由于提供的链接失效,需要通过其他方式获取所需的Robote-Bold字体文件。

0
0 Comments

问题的原因:需要创建一个自定义字体族,并且其中包含粗体字体。

解决方法:根据文档,将粗体的fontWeight值设置为700。在字体族的示例中,需要添加一个定义粗体的元素。如果使用支持库,则需要添加app:font属性。

整篇文章如下:

在创建自定义字体族时,如果需要包含粗体字体,可以按照以下步骤操作:

1. 将fontWeight的值设置为700,即表示粗体。根据字体资源文档中的说明,最常用的fontWeight值为400表示普通字体,700表示粗体。

2. 在字体族示例中,如lobster字体族,可以使用以下代码来添加粗体字体元素:

<!-- 粗体 -->
<font
    android:fontStyle="normal"
    android:fontWeight="700"
    android:font="/lobster_bold" />

3. 如果使用支持库,可以使用以下代码来添加粗体字体元素:

<!-- 粗体 -->
<font
    app:font="/lobster_bold"
    app:fontStyle="normal"
    app:fontWeight="700" />

需要注意的是,粗体样式的定义是通过fontWeight="700"来实现的,而不是通过fontStyle。

对于是否需要同时添加appandroid前缀,根据测试结果,在API 26和28上只使用app前缀也可以正常工作。根据文档中的说明,支持库只需要使用app命名空间即可。

0