前往
大廳
主題

【Android筆記】Resource - 字體(Font)

LF(小魚) | 2021-03-06 21:38:54 | 巴幣 0 | 人氣 198


一、介紹:
字體(Font)就是一個字的長相,放在res/font/底下的字體檔案檔案,可以是ttf、ttc、otf的字體檔,也接受xml檔來針對字體做設定
元素:
<font-family>*  
    必須是根節點。

<font>  
    沒有子節點。  
    屬性:  
    android:font(Font Resource)
        引用的字體資源
    android:fontStyle(String)
       定義字體的樣式,只能是"normal"或"italic"
    android:fontWeight(int)
        字體粗細,必須為正數,且必為100的倍數,介於100~900(含)之間,一般粗細為400,粗體為700

範例(來自Android官方文件):
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font
        android:fontStyle="normal"
        android:fontWeight="400"
        android:font="@font/lobster_regular" />
    <font
        android:fontStyle="italic"
        android:fontWeight="400"
        android:font="@font/lobster_italic" />
</font-family>


二、可下載字體:
字體資源事實上還提供了,可下載字體(downloadable font)的功能,透過字體提供器(font provider)來獲取字體
元素:
<font-family>*
    必須是根節點
    屬性:
    android:fontProviderAuthority(String)*
        定義請求的字體提供器的授權
    android:fontProviderPackage(String)*
        用於字體提供器的package名稱
    android:fontProviderQuery(String)*
        字體的字串查詢
    android:fontProviderCerts(Array Resource)*
        定義用於提供器簽名證書的哈希(Hash)集,用於驗證提供器的身分

範例(來自Android官方文件):
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
    android:fontProviderAuthority="com.example.fontprovider.authority"
    android:fontProviderPackage="com.example.fontprovider"
    android:fontProviderQuery="Lobster"
    android:fontProviderCerts="@array/certs">
</font-family>
@array/certs的內容:
<resources>
    <string-array
name="certs">
        <item>
MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item>
    </string-array>
</resources>



創作回應

更多創作