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 jenis 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 dikompilasi 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 adalah normal atau italic.
android:fontWeight
Bilangan bulat. 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 kelipatan 100 antara 100 sampai 900, secara inklusif. 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 disimpan di res/layout/ yang menerapkan font ke TextView:

<?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 di aplikasi itu sendiri. Namun, font ini diambil dari penyedia font.

lokasi file:
res/font/filename.xml Nama file adalah 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 disimpan di res/values/ yang menentukan array sertifikat:

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

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

<?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!" />