Um recurso de fonte define uma fonte personalizada que você pode usar no seu app. As fontes podem ser arquivos individuais ou um conjunto de arquivos, conhecido como uma família de fontes e definido em XML.
Confira também como definir fontes em XML ou usar Fontes para download.
Pacote de fontes
Você pode agrupar fontes como recursos em um app. As fontes são compiladas em arquivos
R
e ficam disponíveis automaticamente no sistema como um
recurso. É possível acessar essas fontes com ajuda do
tipo de recurso font
.
- localização do arquivo:
res/font/filename.ttf
(.ttf
,.ttc
,.otf
ou.xml
)
O nome do arquivo é usado como ID de recurso.- referência de recurso:
- Em XML:
@[package:]font/font_name
- Sintaxe:
-
<?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>
- elementos:
- Exemplo:
- Arquivo XML salvo em
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>
Arquivo XML salvo em
res/layout/
que aplica a fonte a umaTextView
:<?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!" />
Fonte para download
Um recurso de fonte disponível para download define uma fonte personalizada que você pode usar em um app. Esta fonte não está disponível no app. Em vez disso, a fonte é extraída de um provedor de fontes.
- localização do arquivo:
res/font/filename.xml
O nome do arquivo é o ID do recurso.- referência de recurso:
- Em XML:
@[package:]font/font_name
- Sintaxe:
-
<?xml version="1.0" encoding="utf-8"?> <font-family android:fontProviderAuthority="authority" android:fontProviderPackage="package" android:fontProviderQuery="query" android:fontProviderCerts="@[package:]array/array_resource" />
- elementos:
- Exemplo:
- Arquivo XML salvo em
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>
Arquivo XML salvo em
res/values/
que define a matriz do certificado:<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="certs"> <item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item> </string-array> </resources>
Arquivo XML salvo em
res/layout/
que aplica a fonte a umaTextView
:<?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!" />