You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/handboek/developer/09-zonder-front-end-framework.md
+71Lines changed: 71 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -602,6 +602,77 @@ En vervolgens:
602
602
<mainclass="example-rich-text"></main>
603
603
```
604
604
605
+
## Je eigen thema en custom font installeren
606
+
607
+
Dit is een vervolg op het stappenplan voor het maken van een eigen thema. Als je een eigen thema gebruikt, wil je waarschijnlijk ook je eigen huisstijl lettertypes (fonts) gebruiken.
608
+
609
+
### Waar installeer je het font?
610
+
611
+
Het is technisch mogelijk om fonts in te laden via een CDN, zoals Google Fonts. Dit heeft echter enkele nadelen:
612
+
613
+
-**Privacy**: Er wordt een verbinding gemaakt met een server van derden (bijv. Google), wat privacy-implicaties kan hebben (GDPR).
614
+
-**Performance**: Je bent afhankelijk van de beschikbaarheid en snelheid van de externe server.
615
+
-**Stabiliteit**: Als de externe dienst wijzigt of stopt, kan je font kapot gaan.
616
+
617
+
Daarom is het beter om fonts lokaal te hosten of via een NPM package te installeren, mits je NPM gebruikt.
618
+
619
+
Soms worden fonts bijgewerkt, daar moet je ook op voorbereid zijn.
620
+
621
+
#### Import met NPM package (@fontsource)
622
+
623
+
Een populaire en makkelijke manier om open source fonts te gebruiken is via het [Fontsource](https://fontsource.org/) project. Fontsource maakt NPM packages van Google Fonts (en andere open source fonts).
624
+
625
+
**Voordelen:**
626
+
627
+
- Fonts worden self-hosted (geen externe requests).
628
+
- Versiebeheer via `package.json`.
629
+
- Makkelijke updates (`npm update`).
630
+
631
+
**Voorbeeld: Fira Sans**
632
+
633
+
Stel je wilt het font "Fira Sans" gebruiken.
634
+
635
+
1. Installeer de package:
636
+
637
+
```bash
638
+
npm install @fontsource/fira-sans
639
+
```
640
+
641
+
2. Importeer het font in je JavaScript of CSS bestand (afhankelijk van je build setup):
642
+
643
+
```javascript
644
+
import "@fontsource/fira-sans"; // Defaults to weight 400
3. Gebruik het font in je CSS variabelen (in je thema configuratie):
651
+
```css
652
+
:root {
653
+
--font-family-base: "Fira Sans", sans-serif;
654
+
}
655
+
```
656
+
657
+
### Best Practices
658
+
659
+
Bij het kiezen en implementeren van fonts zijn er een aantal richtlijnen uit de Stijlrichtlijnen waar je rekening mee moet houden. Zie ook de [typografie richtlijnen](/richtlijnen/stijl/typografie/lettertype/#eigen-font-family-naam-voor-bold-of-italic-variant).
660
+
661
+
#### Vermijd 'Faux' styles
662
+
663
+
Gebruik geen `font-weight: bold` of `font-style: italic` als je niet de daadwerkelijke vette of cursieve variant van het font hebt ingeladen. Browsers proberen dit soms na te bootsen (faux bold/italic), maar dit ziet er vaak lelijk en onprofessioneel uit.
664
+
665
+
Zorg ervoor dat je de specifieke font-bestanden (of imports) voor de gewichten en stijlen die je gebruikt ook daadwerkelijk inlaadt (bijv. 400, 400italic, 700).
666
+
667
+
#### @font-face definities
668
+
669
+
Bespaar niet op het includen van volledige `@font-face` definities. Moderne browsers zijn slim genoeg om fonts pas te downloaden wanneer ze daadwerkelijk op de pagina gebruikt worden.
670
+
671
+
Dit is ook belangrijk voor:
672
+
673
+
- **Google Translate**: Als een gebruiker de pagina vertaalt, kunnen er karakters nodig zijn die niet in je standaard subset zitten.
674
+
- **Internationale tekens**: Voor talen als Japans worden karakters vaak pas geladen als ze nodig zijn. Door de juiste definities te hebben, zorg je voor een goede weergave in alle scenario's.
675
+
605
676
## Heb je feedback?
606
677
607
678
Dit is een eerste versie, we willen graag van de community horen of dit stappenplan werkbaar en nuttig is.
0 commit comments