# Thèmes, polices et images

<PageBadges />

## Thèmes de couleur

`colorMode` accepte `light` ou `dark`. Fournissez un `customTheme` partiel pour surcharger des jetons;
binding le fond avec le thème intégré sélectionné. Une application peut résoudre le périphérique
préférence avec React Native 's `useColorScheme` et passer le mode résultant.

```jsx
<FormRenderer schema={schema} colorMode="dark" customTheme={{ color: { primary: "#7c3aed" } }} />
```

`lightTheme`, `darkTheme`, `mergeThemes`, et `getThemeByName` sont exportés au niveau de l'application
composition du thème. `ThemeProvider` et `useTheme` peuvent garder l'interface utilisateur native
forme.

## Polices empaquetées

Le paquet exporte ses actifs Figtree via `form0Fonts`. Dans Expo, chargez-les à l'application
Démarrage avant le rendu du formulaire:

```jsx
import { useFonts } from "expo-font"
import { form0Fonts, FormRenderer } from "form0-react-native"

const [fontsLoaded] = useFonts(form0Fonts)
if (!fontsLoaded) return null

return <FormRenderer schema={schema} />
```

## Images de soutien

Les chemins HTTP et HTTPS distants sont résolus par défaut en `{ uri }`. React Native nécessite des paquets locaux
images à découvrir statiquement, alors fournissez un `imageResolver` qui mappe les chemins schema à
Sources d'images importées ou requises:

```jsx
const images = {
  "safety/helmet.png": require("./assets/safety/helmet.png"),
}

<FormRenderer schema={schema} imageResolver={(path) => images[path] ?? null} />
```

Le Expo starter maintenu génère ce mappage lorsque les ressources d'image de support changent.
