~/www cat jak-sprawdzic-czy-czcionka-ma-po….md
Jak sprawdzić, czy czcionka ma polskie znaki? 8 sposobów: od Google Fonts po Pythona
Jak sprawdzić, czy czcionka ma polskie znaki: test „Zażółć gęślą jaźń”, filtr Google Fonts, Windows, macOS, Linux, fontTools i DevTools. Co zrobić, gdy ich brak.

~ xad tldr jak-sprawdzic-czy-czcionka…
- Wpisz testowy tekst „Zażółć gęślą jaźń” i „ZAŻÓŁĆ GĘŚLĄ JAŹŃ” — zawiera wszystkie 18 polskich liter. Jeśli któraś wygląda inaczej niż reszta, program podmienił ją z innego fontu.
- Na Google Fonts włącz filtr Language → Polish; na stronie fontu zakładka „Glyphs & languages” pokazuje listę obsługiwanych języków.
- Pewny wynik daje sprawdzenie tablicy cmap: Tablica znaków w Windows, „obsługiwane języki” w Książce z czcionkami na Macu, fc-list :lang=pl w Linuksie albo skrypt w Pythonie z fontTools.
- Każdą odmianę (Regular, Bold, Italic) sprawdzaj osobno — zdarza się, że pogrubienie z tej samej rodziny nie ma ogonków.
- Obecność „ą” to nie wszystko: ogonki i kreski bywają doklejone byle jak. Oceń je w większym rozmiarze, zanim użyjesz fontu w logo.
$ tree --spis-tresci
Żeby sprawdzić, czy czcionka ma polskie znaki, wpisz nią tekst „Zażółć gęślą jaźń” i „ZAŻÓŁĆ GĘŚLĄ JAŹŃ” — te dwa wiersze zawierają wszystkie 18 polskich liter. Jeśli któraś z nich wygląda inaczej niż reszta (inna grubość, inny kształt, „szkolny” Arial w środku ozdobnego napisu), font jej nie ma i program podstawił ją z innej czcionki. Pewność daje dopiero sprawdzenie samego pliku: w Tablicy znaków w Windows, w Książce z czcionkami na Macu, poleceniem fc-list :lang=pl w Linuksie albo krótkim skryptem w Pythonie.
Poniżej znajdziesz osiem sposobów — od najszybszego testu na oko po automatyczne sprawdzanie całego folderu z fontami — oraz to, co zrobić, gdy wymarzony krój do logo, na stronę czy do Canvy nie ma ogonków.
Które znaki musi mieć czcionka z polskimi znakami
Polski alfabet ma 9 liter diakrytycznych, każdą w wersji małej i wielkiej. Wszystkie oprócz „ó” leżą w bloku Unicode Latin Extended-A (U+0100–U+017F). „Ó” i „ó” należą do podstawowego zestawu Latin-1, który ma niemal każdy font.
| Litery | Kody Unicode |
|---|---|
| ą ć ę ł ń ś ź ż | U+0105, U+0107, U+0119, U+0142, U+0144, U+015B, U+017A, U+017C |
| Ą Ć Ę Ł Ń Ś Ź Ż | U+0104, U+0106, U+0118, U+0141, U+0143, U+015A, U+0179, U+017B |
| ó Ó | U+00F3, U+00D3 (Latin-1) |
| „ ” – | U+201E, U+201D, U+2013 (cudzysłowy i półpauza) |
Z tego wynika najczęstsza pułapka: font „z akcentami” do francuskiego czy hiszpańskiego ma „ó”, ale nie ma reszty. Na ekranie widzisz wtedy poprawne „ó” i podmienione „ą”, „ł”, „ż”. Ostatni wiersz tabeli nie jest obowiązkowy, ale w porządnym składzie po polsku cudzysłów otwierający stoi na dole („…”), a w zakresach liczb i wtrąceniach używa się półpauzy, nie dywizu.
Sposób 1: test tekstowy „Zażółć gęślą jaźń”
To test, który zrobisz w każdym programie: Canvie, Wordzie, Figmie, Photoshopie czy edytorze motywu WordPressa. Wklej poniższy blok, ustaw sprawdzany font i powiększ tekst do 60–100 pt:
Zażółć gęślą jaźń
ZAŻÓŁĆ GĘŚLĄ JAŹŃ
Pchnąć w tę łódź jeża lub ośm skrzyń fig.
„Cytat w polskich cudzysłowach” – 2025–2026 r.
Pierwsze dwa wiersze to wszystkie polskie litery, trzeci to pangram (zdanie z każdą literą alfabetu), czwarty sprawdza cudzysłowy i półpauzę. Na co patrzeć:
- litera wyraźnie innym krojem, zwykle prostym bezszeryfowym — brak znaku w foncie i podmiana z czcionki zapasowej,
- puste prostokąty („tofu”) lub znaki zapytania — brak znaku i brak podmiany,
- litera bez ogonka lub kreski („a” zamiast „ą”) — stary font z błędnym kodowaniem albo font „spolszczony” na skróty.
Uwaga: Word, Canva i większość programów graficznych podstawiają brakujące znaki po cichu. W polu nazwy czcionki nadal widzisz wybrany font, a w wyeksportowanym PDF-ie czy PNG lądują litery z innego kroju. Dlatego test zawsze rób w dużym rozmiarze i porównuj kształty, a nie nazwę fontu.
Jeśli zamiast polskich liter widzisz ciągi w rodzaju „Ä…” albo „Ĺ‚”, to nie jest wina czcionki, tylko złego kodowania tekstu — tak samo jak przy krzakach w plikach XML.
Sposób 2: czcionki Google z polskimi znakami — filtr języka
Jeśli dopiero szukasz kroju, zacznij od filtra. Na Google Fonts:
- Kliknij Filters obok pola wyszukiwania.
- W sekcji Language wpisz „Polish” i wybierz język. Adres zmieni się na fonts.google.com/?lang=pl_Latn.
- Lista ograniczy się do rodzin, które Google Fonts uznaje za obsługujące polski — w październiku 2026 r. było ich ponad 1200 z około 1950. Podgląd automatycznie pokazuje polski tekst.
- Na stronie wybranego fontu otwórz zakładkę Glyphs & languages: zobaczysz glify (m.in. ą, ć, ę, ł) i listę obsługiwanych języków według kontynentów.
Przy osadzaniu fontu przez API Google Fonts polskie litery są w podzbiorze latin-ext — przeglądarka pobiera go automatycznie, gdy na stronie pojawi się któryś z tych znaków. Problem zaczyna się przy samodzielnym hostowaniu i przycinaniu fontów (subsetting): jeśli zostawisz tylko podzbiór latin, z polskich liter zostanie samo „ó”. Szczegóły opisuje artykuł o fontach na stronie: WOFF2, font-display i subsettingu. Na to samo uważaj w ustawieniach typografii motywów WordPressa — część z nich ma osobną opcję podzbiorów czcionek, a przy wyborze motywu WordPress warto od razu sprawdzić, czy domyślne fonty mają ogonki.
Sposób 3: przeglądarka fontów online, która nie wysyła pliku
Gdy masz już plik TTF, OTF, WOFF lub WOFF2 (np. z paczki od klienta albo z darmowego serwisu), najwygodniej obejrzeć go w narzędziu, które pokazuje pokrycie znaków. Przykładem jest przeglądarka i tester fontów z listą obsługiwanych języków (ang.) w fontplop: wczytujesz plik, w zakładce Languages widzisz języki, które zestaw znaków pokrywa, i brakujące znaki, a lista glifów pokazuje każdy znak z kodem Unicode. Według deklaracji autorów font jest odczytywany lokalnie w przeglądarce i nie trafia na serwer, co ma znaczenie przy fontach komercyjnych objętych licencją.
To samo narzędzie przydaje się do oceny jakości, nie tylko obecności znaków: wpiszesz własny tekst testowy w dowolnym rozmiarze i od razu zobaczysz, czy „ą” nie odstaje od „a”.
Sposób 4: Windows — podgląd w Ustawieniach i Tablica znaków
Podgląd czcionki z własnym tekstem
- Otwórz Ustawienia → Personalizacja → Czcionki (albo wpisz
ms-settings:fontsw oknie Uruchom, Win+R). - Kliknij czcionkę na liście Dostępne czcionki.
- W polu podglądu u góry wpisz „Zażółć gęślą jaźń ZAŻÓŁĆ GĘŚLĄ JAŹŃ” i zwiększ rozmiar suwakiem.
Podgląd po dwukrotnym kliknięciu pliku .ttf w Eksploratorze pokazuje przykładowe zdania, które zwykle nie zawierają polskich liter, więc do testu ogonków się nie nadaje.
Tablica znaków (charmap)
Tablica znaków pokazuje tylko te znaki, które są w pliku fontu — nic nie podmienia, dlatego jest bardziej wiarygodna niż podgląd tekstu.
- Naciśnij Win+R, wpisz
charmapi Enter. - Wybierz czcionkę z listy Czcionka.
- Przewiń siatkę za blok liter z akcentami (à, á, â…). Jeśli font ma polskie znaki, zaraz za nimi zobaczysz Ā ā Ă ă Ą ą Ć ć…, a dalej Ł ł Ń ń Ś ś Ź ź Ż ż.
- Możesz też zaznaczyć Widok zaawansowany i w polu przejścia do kodu Unicode (Go to Unicode) wpisać
0105— jeśli font ma „ą”, zostanie ono zaznaczone.
Sposób 5: macOS — Książka z czcionkami (Font Book)
Na Macu sprawdzisz to w aplikacji Książka z czcionkami, bez instalowania niczego dodatkowego:
- Zaznacz czcionkę i kliknij przycisk informacji na pasku narzędzi. W szczegółach znajdziesz pozycję „obsługiwane języki” — szukaj na liście polskiego.
- W widoku Próbka kliknij dwukrotnie przykładowe zdanie i wpisz polski tekst testowy.
- W widoku Siatka kliknij font dwukrotnie, żeby zobaczyć wszystkie obsługiwane znaki.
Opis widoków i panelu informacji znajdziesz w podręczniku Książki z czcionkami na stronie Apple. Nazwy przycisków różnią się nieco między wersjami macOS, ale panel z obsługiwanymi językami jest w aplikacji od lat.
Sposób 6: Linux — fc-list :lang=pl i fc-query
W Linuksie fonty obsługuje fontconfig, który dla każdego pliku wylicza listę języków, porównując zestaw znaków z wzorcem danego języka. Wzorzec polski to podstawowy alfabet łaciński i 18 polskich liter — cudzysłowów ani półpauzy nie obejmuje. Jeśli dopiero oswajasz się z terminalem, przyda się zestaw podstawowych poleceń Linuksa.
# wszystkie zainstalowane rodziny, które obsługują polski
fc-list :lang=pl family | sort -u
# czy konkretna rodzina jest na liście
fc-list :lang=pl family | grep -i "lato"
# sprawdzenie pliku, który nie jest zainstalowany
fc-query moj-font.otf | grep "lang:" | grep -qw pl && echo "polski: tak" || echo "polski: nie"
fc-query czyta plik bezpośrednio, więc działa także na fontach pobranych do katalogu roboczego. W przypadku plików .ttc (kolekcji) wynik pojawi się osobno dla każdego kroju z kolekcji.
Sposób 7: Python i fontTools — skrypt sprawdzający 18 polskich liter
Gdy masz do sprawdzenia kilkadziesiąt plików albo chcesz dodać test do procesu budowania strony, użyj biblioteki fontTools. Metoda getBestCmap() zwraca słownik „kod Unicode → glif”, więc wystarczy sprawdzić, czy są w nim wszystkie polskie litery.
Instalacja (dodatek woff instaluje bibliotekę brotli potrzebną do plików WOFF2):
python -m pip install "fonttools[woff]"
Skrypt polskie_znaki.py:
import sys
from fontTools.ttLib import TTFont
POLSKIE = "ąćęłńóśźżĄĆĘŁŃÓŚŹŻ"
DODATKOWE = "„”–—…" # cudzysłowy, półpauza, pauza, wielokropek
def sprawdz(sciezka, numer=0):
font = TTFont(sciezka, fontNumber=numer, lazy=True)
cmap = font.getBestCmap() or {}
nazwa = font["name"].getDebugName(4) or sciezka
brak = [z for z in POLSKIE if ord(z) not in cmap]
brak_dod = [z for z in DODATKOWE if ord(z) not in cmap]
if brak:
print(f"BRAK {nazwa}: brakuje {len(brak)} liter: {' '.join(brak)}")
else:
print(f"OK {nazwa}: wszystkie 18 polskich liter")
if brak_dod:
print(f" brak typografii: {' '.join(brak_dod)}")
return not brak
if __name__ == "__main__":
wynik = [sprawdz(p) for p in sys.argv[1:]]
sys.exit(0 if all(wynik) else 1)
Uruchomienie dla jednego lub wielu plików (TTF, OTF, WOFF, WOFF2, a z kolekcji .ttc sprawdzany jest pierwszy krój):
python polskie_znaki.py Lato-Regular.ttf Lato-Bold.ttf fonts/*.woff2
Przykładowy wynik dla Ariala przyciętego tylko do podzbioru Latin-1 wygląda tak: BRAK Arial: brakuje 16 liter: ą ć ę ł ń ś ź ż Ą Ć Ę Ł Ń Ś Ź Ż — bo „ó” i „Ó” zostały. Skrypt kończy się kodem 1, jeśli którykolwiek plik nie ma kompletu, więc możesz go wpiąć w CI albo skrypt budujący stronę.
Sposób 8: DevTools — czy przeglądarka nie podmienia ogonków na stronie
Font może mieć polskie znaki na Twoim komputerze, a mimo to na stronie litery z ogonkami będą pochodzić z innego kroju — bo przycięty plik WOFF2 nie ma latin-ext, bo plik się nie załadował albo bo pogrubienie zostało wczytane z innego pliku niż Regular.
W Chrome i Edge:
- Kliknij prawym przyciskiem akapit z polskimi literami i wybierz Zbadaj.
- W panelu Elements przejdź na kartę Computed i przewiń na sam dół do sekcji Rendered Fonts.
- Sprawdź, ile fontów jest na liście. Jeśli obok Twojego fontu widzisz np. Arial albo Segoe UI z kilkoma glifami, to właśnie one rysują polskie litery.
W Firefoksie to samo pokazuje karta Fonts w Inspektorze (sekcja „Fonts used”). Dla pewności dodaj tymczasowo na stronie element z samym tekstem „ąćęłńśźż ĄĆĘŁŃŚŹŻ” i zbadaj właśnie jego. Takie sprawdzenie warto włączyć do listy przy teście strony internetowej przed publikacją.
Font ma „ą”, ale wygląda źle — jakość ogonków, fałszywe pogrubienia, licencje
Obecność glifu to dopiero połowa sprawy. Polskie znaki dodane do fontu przez osobę, która nie zna polskiej typografii, często psują wygląd tekstu bardziej niż ich brak. Adam Twardoch w znanym poradniku dla projektantów „Polish Diacritics: how to?” opisuje typowe błędy. Te, które najłatwiej wypatrzysz:
- ogonek „doklejony” jak francuska cedylla — wisi pod środkiem litery zamiast płynnie wychodzić z jej prawej dolnej części; w „ę” powinien być przy prawej stronie, a nie pośrodku,
- kreska nad ć, ń, ś, ź skopiowana z francuskiego akcentu — w polskiej typografii jest bardziej stroma i przesunięta w prawo,
- kropka nad „ż” niewyśrodkowana albo innego kształtu niż kropka nad „i”,
- przekreślenie w „ł” narysowane jak w symbolu funta albo w złym miejscu.
W tekście ciągłym te detale giną, ale w logo, nagłówku czy na szyldzie widać je od razu. Przy wyborze kroju do identyfikacji wizualnej porównaj dwa, trzy kandydujące fonty na tym samym napisie — ułatwia to porównanie dwóch fontów na własnym tekście (ang.), gdzie kroje można ułożyć obok siebie albo nałożyć na wspólną linię bazową. Typografia to też element UX, o czym więcej w tekście o prawach UX i zasadach projektowania.
Fałszywe pogrubienia i kursywy
Gdy rodzina nie ma pliku Bold albo Italic, Word, Canva i przeglądarki potrafią „dorobić” pogrubienie lub pochylenie algorytmicznie. Wygląda to gorzej niż prawdziwy krój, a z ogonkami bywa jeszcze gorzej: jeśli Regular ma polskie znaki, a plik Bold nie, pogrubione „ą” przyjdzie z czcionki zapasowej. Dlatego sprawdzaj każdy plik rodziny osobno (skrypt z sekcji 7 przyjmuje wiele plików naraz). Na stronie możesz wyłączyć sztuczne odmiany regułą CSS font-synthesis: none; — brak odmiany będzie wtedy od razu widoczny.
Licencje darmowych fontów
„Darmowy” nie zawsze znaczy „do użytku komercyjnego”. Fonty z Google Fonts są w większości na licencji SIL Open Font License, która pozwala na użycie komercyjne, w logo i na stronach. Fonty z serwisów z darmowymi czcionkami często mają dopisek „free for personal use” — do logo firmy trzeba wtedy kupić licencję. Krążące w sieci „spolszczone” wersje komercyjnych fontów to zwykle naruszenie licencji, a przy okazji źródło najgorszych ogonków.
Gdzie szukać czcionek z polskimi znakami
- Google Fonts z filtrem języka polskiego — największy wybór fontów na otwartych licencjach. Wśród nich jest m.in. Lato zaprojektowane przez polskiego projektanta Łukasza Dziedzica.
- Fonty GUST (Polskiej Grupy Użytkowników Systemu TeX), np. Antykwa Półtawskiego i rodzina TeX Gyre — projektowane z myślą o bogatym zestawie znaków diakrytycznych, na wolnej licencji GUST Font License.
- Komercyjne odlewnie (foundries) — przy fontach płatnych sprawdź w opisie listę języków albo pokrycie „Latin Extended-A” / „Central European” / „CE”. Polskie znaki często są tylko w droższej wersji „Pro”.
Co zrobić, gdy font nie ma polskich znaków
- Sprawdź, czy istnieje rozszerzona wersja tego samego kroju: Pro, Extended, CE, „Latin Ext”. Wersje podstawowe bywają ograniczone do angielskiego i zachodnioeuropejskich języków.
- Poszukaj podobnego kroju z polskimi znakami. Filtr na Google Fonts plus test „Zażółć gęślą jaźń” zwykle szybko daje kilka zamienników o podobnym charakterze.
- W grafice i logo — jeśli napis nie zawiera polskich liter (np. nazwa marki „Ventus”), font bez ogonków może zostać. Problem pojawi się dopiero przy haśle czy podpisie, więc sprawdź wszystkie teksty, które będą tym fontem składane.
- Na stronie www możesz uzupełnić brakujące litery z innego fontu. Obie deklaracje
@font-facedostają tę samą nazwę rodziny, a druga maunicode-rangez polskimi znakami:
@font-face {
font-family: "Naglowek";
src: url("/fonts/ozdobny.woff2") format("woff2");
font-display: swap;
}
/* polskie litery z drugiego, podobnego kroju */
@font-face {
font-family: "Naglowek";
src: url("/fonts/zamiennik-pl.woff2") format("woff2");
unicode-range: U+00D3, U+00F3, U+0104-0107, U+0118-0119,
U+0141-0144, U+015A-015B, U+0179-017C;
font-display: swap;
}
h1, h2 { font-family: "Naglowek", sans-serif; }
Gdy zakresy się nakładają, przeglądarka sprawdza reguły od ostatniej zdefiniowanej, więc dla wskazanych znaków użyje zamiennika — nawet jeśli pierwszy font ma np. własne, brzydkie „ó”. Dlatego w zakresie jest też „ó” i „Ó”: wszystkie polskie litery pochodzą wtedy z jednego kroju i nie odstają od siebie. To rozwiązanie awaryjne — mieszanie fontów działa tylko przy krojach o bardzo zbliżonej grubości i proporcjach, więc efekt zawsze sprawdź testem z sekcji 1.
Wskazówka: Fonty na licencji OFL możesz legalnie modyfikować i dorysować w nich brakujące znaki, ale zmodyfikowana wersja zwykle musi mieć inną nazwę, jeśli autor zastrzegł oryginalną (Reserved Font Name). Przy fontach komercyjnych edycja pliku jest zazwyczaj zabroniona — zamiast tego zapytaj odlewnię o wersję z polskimi znakami.
~ man faq
Najczęściej zadawane pytania
Jak sprawdzić, czy czcionka ma polskie znaki?
Najszybciej wpisz w niej tekst „Zażółć gęślą jaźń” oraz to samo wielkimi literami. Jeśli wszystkie litery mają ten sam krój, font je ma. Dla pewności sprawdź plik w Tablicy znaków (Windows), Książce z czcionkami (macOS) albo poleceniem fc-list :lang=pl (Linux).
Jak znaleźć czcionki z polskimi znakami w Google Fonts?
Kliknij Filters, w sekcji Language wpisz Polish i wybierz język. Lista ograniczy się do rodzin obsługujących polski, a podgląd pokaże polski tekst. Na stronie konkretnego fontu zajrzyj do zakładki Glyphs & languages.
Dlaczego w Canvie lub Wordzie część polskich liter wygląda inaczej?
Wybrany font nie ma tych znaków, więc program podstawia je z innego kroju, choć w polu nazwy czcionki nadal widzisz wybrany font. Zmień czcionkę na taką, która ma komplet polskich liter.
Ile jest polskich liter, które musi mieć czcionka?
Polski alfabet ma 9 liter diakrytycznych: ą, ć, ę, ł, ń, ó, ś, ź, ż. Razem z wielkimi odpowiednikami daje to 18 znaków. Do poprawnego składu przydają się też polskie cudzysłowy „” i półpauza –.
Co zrobić, gdy font nie ma polskich znaków?
Poszukaj wersji Pro, Extended lub Latin Extended tego samego fontu, wybierz podobny krój z polskimi znakami albo na stronie www uzupełnij brakujące litery z innego fontu przez unicode-range. Dorabianie ogonków na własną rękę wymaga zgody licencji.
Ten artykuł jest częścią tematu
$ whoami
Założyciel i redaktor XAD.pl. Pisze o sieciach, bezpieczeństwie IT, administracji systemami Windows i Linux oraz o sprzęcie, który sprawia ludziom problemy na co dzień.


