Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Resource font

Resource font menentukan font kustom yang dapat Anda gunakan dalam aplikasi. Font dapat berupa file font individual, atau sekumpulan file font yang dikenal sebagai family font dan ditentukan dalam XML.

Lihat juga cara menentukan font dalam XML atau gunakan font yang dapat didownload.

Font yang dipaket

Anda dapat memaketkan font sebagai resource dalam aplikasi. Font dihimpun dalam file R dan tersedia secara otomatis dalam sistem sebagai resource. Anda kemudian dapat mengakses font ini dengan bantuan jenis resource font.

lokasi file:
res/font/filename.ttf (.ttf, .ttc, .otf, atau .xml)
Nama file digunakan sebagai ID resource.
referensi resource:
Dalam XML: @[package:]font/font_name
sintaksis:
    <?xml version="1.0" encoding="utf-8"?>
    <font-family>
      <font
        android:font="@[package:]font/font_to_include"
        android:fontStyle=["normal" | "italic"]
        android:fontWeight="weight_value" />
    </font-family>
    
elemen:
<font-family>
Wajib. Elemen ini harus menjadi node root.

Tidak ada atribut.

<font>
Menentukan font tunggal dalam suatu family Tidak berisi node turunan.

atribut:

android:fontStyle
Kata kunci. Menentukan gaya font. Atribut ini digunakan ketika font dimuat ke dalam stack font dan menggantikan informasi gaya yang ada dalam tabel header font. Jika atribut ini tidak ditentukan, aplikasi akan menggunakan nilai dari tabel header font. Nilai konstantanya harus berupa normal atau italic.
android:fontWeight
Integer. Ketebalan font. Atribut ini digunakan ketika font dimuat ke stack font dan menggantikan informasi ketebalan yang ada dalam tabel header font. Nilai atribut ini harus bernilai positif, berkelipatan 100, dan keseluruhannya harus berada di antara 100 dan 900. Jika atribut ini tidak ditentukan, aplikasi akan menggunakan nilai dari tabel header font. Nilai yang paling umum adalah 400 untuk font biasa dan 700 untuk font tebal.
contoh:
File XML yang disimpan di res/font/lobster.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <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>
    

File XML yang menerapkan font ke TextView disimpan di res/layout/:

    <?xml version="1.0" encoding="utf-8"?>
    <EditText
        android:fontFamily="@font/lobster"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Hello, World!" />
    

Font yang dapat didownload

Resource font yang dapat didownload menentukan font kustom yang dapat Anda gunakan dalam aplikasi. Font ini tidak tersedia dalam aplikasi sendiri, tetapi diambil dari penyedia font.

lokasi file:
res/font/filename.xml Nama file digunakan sebagai ID resource.
referensi resource:
Dalam XML:@[package:]font/font_name
sintaksis:
    <?xml version="1.0" encoding="utf-8"?>
    <font-family
        android:fontProviderAuthority="authority"
        android:fontProviderPackage="package"
        android:fontProviderQuery="query"
        android:fontProviderCerts="@[package:]array/array_resource" />
    
elemen:
<font-family>
Wajib. Elemen ini harus menjadi node root.

atribut:

android:fontProviderAuthority
String. Wajib. Otoritas penyedia font yang menentukan permintaan font.
android:fontProviderPackage
String. Wajib. Nama paket Penyedia Font yang akan digunakan untuk permintaan. Nama ini digunakan untuk memverifikasi identitas penyedia.
android:fontProviderQuery
String. Wajib. Kueri string font. Lihat dokumentasi penyedia font Anda tentang format string ini.
android:fontProviderCerts
Resource array. Wajib. Menentukan rangkaian hash bagi sertifikat yang digunakan untuk menandatangani penyedia ini. Atribut ini digunakan untuk memverifikasi identitas penyedia dan hanya diperlukan jika penyedia bukan merupakan bagian dari image sistem. Nilainya dapat mengarah ke daftar tunggal (resource array string) atau daftar yang terdiri dari beberapa daftar (resource array), dengan setiap daftar yang merepresentasikan sekumpulan hash tanda tangan. Lihat dokumentasi penyedia font Anda untuk mencari tahu tentang nilai ini.
contoh:
File XML yang disimpan di res/font/lobster.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <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>
    

File XML yang menentukan array sertifikat disimpan di res/values/:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="certs">
          <item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item>
        </string-array>
    </resources>
    

File XML yang menerapkan font ke TextView disimpan di res/layout/:

    <?xml version="1.0" encoding="utf-8"?>
    <EditText
        android:fontFamily="@font/lobster"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Hello, World!" />