Tài nguyên phông chữ xác định phông chữ tuỳ chỉnh mà bạn có thể dùng trong ứng dụng của mình. Phông chữ có thể là các tệp phông chữ riêng lẻ hoặc một tập hợp các tệp phông chữ, được gọi là bộ phông chữ và được xác định trong XML.
Ngoài ra, hãy xem cách xác định phông chữ trong XML hoặc sử dụng Phông chữ có thể tải xuống.
Phông chữ theo gói
Bạn có thể gói các phông chữ dưới dạng tài nguyên trong một ứng dụng. Phông chữ sẽ được biên dịch trong tệp R
và tự động xuất hiện trong hệ thống ở dạng tài nguyên. Sau đó, bạn có thể truy cập vào những phông chữ này với sự trợ giúp của loại tài nguyên font
.
- vị trí tệp:
res/font/filename.ttf
(.ttf
,.ttc
,.otf
, hoặc.xml
)
Tên tệp được dùng làm mã nhận dạng tài nguyên.- mã tham chiếu tài nguyên:
- Trong XML:
@[package:]font/font_name
- cú pháp:
-
<?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>
- phần tử:
- ví dụ:
- Tệp XML được lưu vào
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>
Tệp XML được lưu trong
res/layout/
, áp dụng phông chữ choTextView
:<?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!" />
Phông chữ có thể tải xuống
Tài nguyên phông chữ có thể tải xuống xác định phông chữ tuỳ chỉnh mà bạn có thể dùng trong ứng dụng. Phông chữ này không có sẵn trong ứng dụng. Thay vào đó, phông chữ này sẽ được truy xuất từ một trình cung cấp phông chữ.
- vị trí tệp:
res/font/filename.xml
Tên tệp là mã nhận dạng tài nguyên.- mã tham chiếu tài nguyên:
- Trong XML:
@[package:]font/font_name
- cú pháp:
-
<?xml version="1.0" encoding="utf-8"?> <font-family android:fontProviderAuthority="authority" android:fontProviderPackage="package" android:fontProviderQuery="query" android:fontProviderCerts="@[package:]array/array_resource" />
- phần tử:
- ví dụ:
- Tệp XML được lưu vào
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>
Tệp XML được lưu trong
res/values/
, xác định mảng chứng chỉ:<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="certs"> <item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item> </string-array> </resources>
Tệp XML được lưu trong
res/layout/
, áp dụng phông chữ choTextView
:<?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!" />