EARHORNMUSIC UPnP · Android TV · Phones · Android Auto · GNU/Linux
Release 0.5.0

FONTS.md

# Fonts

Drop variable TTFs into `app/src/main/res/font/`:

- `inter.ttf` — primary UI font, used everywhere
- `fraunces.ttf` — optional; only used for `&` (ampersand) substitution via
  `withFancyAmpersand()` so the swash form shows up on "Artist & Album" labels

## Install

**Inter:**
1. https://fonts.google.com/specimen/Inter → Get font.
2. Extract. Look for `Inter-VariableFont_opsz,wght.ttf`.
3. Rename to `inter.ttf` (lowercase — `res/font/` requires `[a-z0-9_]`).
4. Drop into `app/src/main/res/font/inter.ttf`.

**Fraunces** (optional):
1. https://fonts.google.com/specimen/Fraunces → Get font.
2. Extract. Look for `Fraunces[SOFT,WONK,opsz,wght].ttf`.
3. Rename to `fraunces.ttf`.
4. Drop into `app/src/main/res/font/fraunces.ttf`.

## Fallbacks

Both families are loaded via `Resources.getIdentifier()` so missing files
don't break the build:

- No `inter.ttf` → system SansSerif (Roboto on most TVs).
- No `fraunces.ttf` → system Serif for ampersands.

## Swash ampersand

Text sites that want the decorative `&`:

```kotlin
Text(withFancyAmpersand("Artist & Album"))
```

Everything non-ampersand stays in Inter.