Une ressource de police définit une police personnalisée que vous pouvez utiliser dans votre application. Les polices peuvent être des fichiers de police individuels ou un ensemble de fichiers de police, appelé famille de polices et défini en XML.
Découvrez également comment définir des polices en XML ou utilisez des polices téléchargeables.
Police groupée
Vous pouvez regrouper les polices en tant que ressources dans une application. Les polices sont compilées dans le fichier R
et sont automatiquement disponibles en tant que ressource dans le système. Vous pouvez ensuite accéder à ces polices à l'aide du type de ressource font
.
- Emplacement du fichier :
res/font/filename.ttf
(.ttf
,.ttc
,.otf
ou.xml
)
Le nom de fichier est utilisé comme ID de ressource.- Référence de la ressource :
- En XML :
@[package:]font/font_name
- syntaxe :
-
<?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>
- Éléments :
- Exemple :
- Fichier XML enregistré sous
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>
Fichier XML enregistré dans
res/layout/
qui applique la police à un élémentTextView
:<?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!" />
Police téléchargeable
Une ressource de police téléchargeable définit une police personnalisée que vous pouvez utiliser dans une application. Cette police n'est pas disponible dans l'application elle-même, mais récupérée à partir d'un fournisseur de polices.
- Emplacement du fichier :
res/font/filename.xml
Le nom de fichier est l'ID de la ressource.- Référence de la ressource :
- En XML :
@[package:]font/font_name
- syntaxe :
-
<?xml version="1.0" encoding="utf-8"?> <font-family android:fontProviderAuthority="authority" android:fontProviderPackage="package" android:fontProviderQuery="query" android:fontProviderCerts="@[package:]array/array_resource" />
- Éléments :
- Exemple :
- Fichier XML enregistré sous
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>
Fichier XML enregistré dans
res/values/
, qui définit le tableau de certificats :<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="certs"> <item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item> </string-array> </resources>
Fichier XML enregistré dans
res/layout/
qui applique la police à un élémentTextView
:<?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!" />