Die Verwendung eleganter Schriftarten verbessert das Benutzererlebnis erheblich bei der Webentwicklung.
In diesem Artikel erkläre ich, wie man die bekannte Webschriftart Poppins in einem Django-Projekt verwendet und,
wie man die systemeigenen Schriftarten sans-serif auch in Container-Umgebungen zuverlässig einsetzt.
1. Was ist die Schriftart Poppins?
Poppins ist eine moderne und elegante Sans-Serif-Schriftart, die von Google Fonts bereitgestellt wird.
Allerdings unterstützt sie keine koreanischen, japanischen oder chinesischen Zeichen, weshalb andere Schriftarten als Fallback eingestellt werden müssen.
2. Google Fonts direkt verwenden (CDN-Methode)
Die einfachste Methode besteht darin, den Link zu Google Fonts in den <head>
einzufügen.
<!-- base.html -->
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&family=Noto+Sans+KR&family=Noto+Sans+JP&display=swap" rel="stylesheet">
body {
font-family: 'Poppins', 'Noto Sans KR', 'Noto Sans JP', sans-serif;
}
❗ Achtung: In einigen Ländern, wie z.B. China, kann der Zugriff auf Google Fonts blockiert sein.
In diesem Fall wird die Schriftart möglicherweise nicht geladen, was zu verzerrten Zeichen oder der Verwendung der standardmäßigen Systemschriftart führen kann.
Um dieses Problem zu lösen, empfiehlt es sich, die lokale Installationsmethode zu verwenden.
3. Lokale Schriftarten installieren und verwenden
📁 Beispiel für die Projektverzeichnisstruktur
your_project/
├── static/
│ ├── fonts/
│ │ ├── poppins/
│ │ │ ├── Poppins-Regular.woff2
│ │ │ └── Poppins-Bold.woff2
│ │ └── noto/
│ │ ├── NotoSansKR-Regular.woff2
│ │ └── NotoSansJP-Regular.woff2
│ └── css/
│ └── fonts.css
🎨 Beispiel für fonts.css
/* Poppins */
@font-face {
font-family: 'Poppins';
src: url('/static/fonts/poppins/Poppins-Regular.woff2') format('woff2');
font-weight: 400;
}
@font-face {
font-family: 'Poppins';
src: url('/static/fonts/poppins/Poppins-Bold.woff2') format('woff2');
font-weight: 700;
}
/* Noto Sans KR */
@font-face {
font-family: 'Noto Sans KR';
src: url('/static/fonts/noto/NotoSansKR-Regular.woff2') format('woff2');
}
/* Noto Sans JP */
@font-face {
font-family: 'Noto Sans JP';
src: url('/static/fonts/noto/NotoSansJP-Regular.woff2') format('woff2');
}
📌 Beispiel für die CSS-Anwendung
:root {
--font-default: 'Poppins', 'Noto Sans KR', 'Noto Sans JP', sans-serif;
}
body {
font-family: var(--font-default);
}
4. Ist die Installation von sans-serif
nötig?
✅ Normale Ubuntu-Umgebung
sans-serif
ist eher eine Schriftfamilie (generische Schriftfamilie) als ein Schriftartname, und wird tatsächlich automatisch durch die Standard-Sans-Serif-Schriftart des Systems ersetzt. (z.B.: Arial, Helvetica, Noto Sans, DejaVu Sans, etc. wird je nach System unterschiedlich gemappt.)- Das heißt, wenn Sie
font-family: sans-serif;
verwenden, sucht der Browser nach der Standard-Sans-Serif-Schriftart des jeweiligen OS und zeigt diese an. - In der Regel sind
DejaVu Sans
,Liberation Sans
,Noto Sans
bereits standardmäßig installiert. - Sie können also
sans-serif
angeben, und es wird automatisch gut angezeigt.
❌ Docker-Container-Umgebung
Viele Container (insbesondere python:3.x-slim
, debian-slim
) haben keine Standard-Schriftarten.
→ Koreanisch, Japanisch und sogar Englisch können als Kästchen (□) angezeigt werden.
5. Schriftarten in Docker-Umgebungen installieren
🐳 Beispiel für Dockerfile
FROM python:3.12-slim
RUN apt update && apt install -y \
fonts-dejavu \
fonts-noto \
fonts-noto-cjk \
&& rm -rf /var/lib/apt/lists/*
fonts-dejavu
: für standardmäßige sans-serif-Zuordnungfonts-noto
: Unterstützung für eine Vielzahl von Sprachenfonts-noto-cjk
: Unterstützung für chinesische, koreanische und japanische Schriftzeichen
6. Fazit
Element | Inhalt |
---|---|
Poppins |
Nur für lateinische Zeichen, unterstützt kein Koreanisch oder Japanisch |
Google Fonts | Praktisch, aber in Ländern wie China blockiert |
Lokale Installation | Die stabilste Methode |
sans-serif |
Standard-Systemschriftart, möglicherweise in Docker nicht installiert |
Docker-Unterstützung | Installation von fonts-dejavu , fonts-noto , fonts-noto-cjk erforderlich |
📦 Bonus: Empfohlene Fallback-Schriftart-Einstellungen
font-family: 'Poppins', 'Noto Sans KR', 'Noto Sans JP', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
Apple SD Gothic Neo
: macOSMalgun Gothic
: Windows- Schöne koreanische Schriftarten als Fallback je nach System
🙋 War das hilfreich?
- Bitte hinterlassen Sie Feedback in den Kommentaren oder per E-Mail.
- Dieser Blog wächst dank Ihres Interesses weiter.
Add a New Comment