DTGaraGe | Автомобили, Офроуд, Заваряване, Linux, AI

Регистрирайте безплатен акаунт днес, за да станете член! След като влезете, ще можете да участвате в този сайт, като добавяте свои собствени теми и публикации, както и да се свързвате с други членове чрез вашата лична пощенска кутия!

Анализ Шрифтът, който не знае буквите ти

Шрифтът, който не знае буквите ти


shriftat-kirilica-banner.png


Пуснах пет AI модела да направят една и съща страница. Три от тях избраха шрифт, който не съдържа кирилица. И нито един не забеляза.


Задачата беше проста и нарочно неясна: направи HTML5 лендинг страница, действай като професионалист, да има ефект уау, искам да спечели конкурс за дизайн. Нищо повече. Без бриф, без палитра, без указания за съдържанието.

Пуснах я на пет модела един след друг. Целта не беше да намеря кой пише по-хубав CSS. Целта беше да видя какво прави всеки, когато му се даде свобода и никакъв надзор.

Резултатът излезе там, където не го търсех.




Находката


Страницата трябваше да е на български. Всички пет модела знаеха това - езикът беше в промпта, в примерния текст, в lang="bg" на самия HTML, който те самите написаха.

Ето какъв шрифт избра всеки за заглавията:


МоделШрифт за заглавияКирилица?
GPTImpactНе
DeepSeekSpace GroteskНе
GrokOutfitНе
GeminiInterДа
ClaudeUnbounded / Golos TextДа

Три от пет. Не са го сгрешили леко - избрали са шрифт, който физически не съдържа буквите, с които страницата ще бъде написана.

Impact покрива латиница и нищо друго. Няма кирилица, няма и гръцки. Стар Monotype шрифт от деветдесетте, направен за англоезични вестникарски заглавия.

Space Grotesk в Google Fonts има подсетове latin, latin-ext и vietnamese. Кирилица няма.

Outfit има latin и latin-ext. Това е всичко.

И трите изглеждат страхотно в примерната картинка, която моделът рисува в главата ти, докато описва дизайна. И трите се разпадат в момента, в който на екрана застане българска дума.




Защо това е коварно, а не просто грешка


Ако шрифтът липсваше изцяло, щеше да гръмне и веднага да го хванеш. Но браузърът не гърми. Той прави точно каквото стандартът му казва: върви по веригата надолу, докато намери шрифт, който съдържа исканата буква.

Затова се получава следното.

При GPT стекът беше Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif. Haettenschweiler също няма кирилица. "Arial Narrow Bold" изобщо не е валидно име на фамилия и се прескача. Резултат: цялото заглавие пада до обикновен Arial. Дизайнът, който моделът описваше с цели абзаци възхищение, се превръща в системен шрифт по подразбиране.

При Grok случаят е още по-подъл. Стекът е 'Outfit', system-ui, sans-serif. Латиницата се изписва с Outfit. Кирилицата пада на system-ui, тоест Segoe UI под Windows или SF Pro под macOS. И двата са прилични шрифтове.

Тоест страницата не изглежда счупена. Изглежда леко несглобена. На един и същи ред стоят два различни шрифта, с различна ширина на буквата и различна височина на малките букви, и никой не е решил това. Никой не може и да каже защо усещането е странно.


Най-опасният дефект не е този, който гърми. Той е този, който изглежда като вкус.



Как се проверява за трийсет секунди


Не е нужно да си типограф. Нужни са две неща.

1. Проверка преди избора

  • Отваряш шрифта в Google Fonts и гледаш списъка Languages или Glyphs. Ако Cyrillic го няма там, няма го и в шрифта.
  • Ако шрифтът е системен (Impact, Tahoma, Verdana), проверяваш в кой Unicode блок попада. Кирилицата е U+0400 до U+04FF.
  • Най-бързият тест: пишеш „Ъгъл Щ Ю Я" в примерното поле. Ако буквите изглеждат различно от останалите, шрифтът вече е паднал на резервен.

2. Локално вграждане с unicode-range


Изтегляш woff2 файловете, слагаш ги при страницата и ги декларираш сам. Така страницата работи офлайн, зарежда се по-бързо и нищо не зависи от чужд CDN.

Code:
@font-face{
  font-family:"Oswald";
  font-style:normal;
  font-weight:200 700;
  font-display:swap;
  src:url("./fonts/oswald-cyrillic-wght-normal.woff2") format("woff2-variations");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

@font-face{
  font-family:"Oswald";
  font-style:normal;
  font-weight:200 700;
  font-display:swap;
  src:url("./fonts/oswald-latin-wght-normal.woff2") format("woff2-variations");
  unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122;
}

unicode-range казва на браузъра кой файл за кои букви отговаря. Латиницата не изтегля кирилския файл и обратно. Целият комплект от три семейства с кирилица ми излезе на 176 килобайта - по-малко от една средна снимка.

Забележка от практиката: когато смениш свръхсбит шрифт като Impact с нещо по-нормално, трябва да отпуснеш и разредката. При letter-spacing: -0.065em, настроен за Impact, буквите на кирилицата започват да се допират.




Другите тихи дефекти


Шрифтът не беше единственият. Понеже прегледах всичките пет реда по ред, ето какво още излезе - все неща, които не гърмят и затова остават.

  • Релативен og:image. content="./assets/og.png" не работи никъде. Facebook, LinkedIn и Telegram искат абсолютен адрес. Споделяш линка и няма картинка.
  • Canonical към чужд домейн. Генераторът беше оставил адреса на собствената си хостинг платформа. Качваш го така и си казал на Google: истинската страница е другаде, индексирай нея.
  • cursor: none без резерва. Два модела скриха системния курсор заради собствен рисуван. Ако JavaScript не се зареди, курсорът просто изчезва и потребителят не знае къде е.
  • Частици с квадратична сложност. Два модела нарисуваха модното „съзвездие" от свързани точки. Единият изчислява броя им от площта на екрана - на 4K това стават над девет милиона сравнения в секунда, вечно, без спиране при скрито табче.
  • Нула ARIA атрибути. Три от петте страници нямаха нито един. Иконките бяха голи текстови символи, които екранен четец произнася като безсмислици.
  • Липсващ prefers-reduced-motion. Две страници пускат осемдесет летящи неонови точки в лицето на човек, който изрично е поискал системата му да намали движението.



Естетиката по подразбиране


Има и втора находка, по-малко техническа, но също толкова показателна.

Четири от пет модела отидоха на почти черен фон с неонов акцент, стъклени карти и летящи частици. Циан и лилаво при два от тях, буква по буква същите нюанси.

Това не е стил. Това е настройка по подразбиране - каквото излиза, когато поискаш „уау" и не дадеш нищо друго. Ако утре искаш страница, която да не прилича на всяка втора AI генерация, най-евтиният начин е да забраниш точно тези три неща в промпта.




Кой какво направи


Уговорка първо: тази подредба е правена с участието на един от участниците. Аз ползвам Claude за писането и той се постави на второ място, не на първо. Вярвам, че е вярно. Но читателят има право да знае, че оценяващият е бил в списъка, и да ми се доверява точно толкова, колкото сметне за редно.

GPT беше единственият, който направи страница за някого. Прочете контекста, който му бях дал, и построи автопортрет: реален визуален актив, разказ с посока, Open Graph, структурирани данни, готов пакет с инструкции за качване на български. Типографията му беше счупена, но конструкцията отдолу издържа.

Grok написа най-добрия текст в целия тест. Не имена, а неща. Терминален блок с whoami и motd, ред за заваряването и кода като една и съща воля, подпис „Вълкът от Врачеш". Кодът му беше вторият най-чист. Загуби заради Outfit.

Claude донесе най-точния занаят: истински шрифтове, генеративен подпис на canvas, палитра, извлечена от предмета, а не от вкуса. Структурата му беше най-плитка.

Gemini уцели единствения шрифт с кирилица и знаеше имената на реалните проекти. Но описа форум за коли и заварки като „механично-дигитална симбиоза" - изречение, което работи еднакво добре за архитектурно бюро. И написа частици, които биха стопили среден телефон.

DeepSeek направи компетентен CSS върху абсолютно нищо. Страницата се казва NEXUS, секциите са „Светкавична скорост" и „Иновация", а във футъра буквално пише, че е създадена за конкурса за дизайн. Годината е сгрешена.




Какво всъщност измери тестът


Не компетентност. Всичките пет пишат валиден, съвременен CSS. Разликата не беше в това колко ефекти могат да напишат.

Разликата беше в едно: дали изобщо се запитаха за кого е страницата - и дали провериха собствения си избор, преди да го обявят за завършен.

Никой от тримата, които избраха шрифт без кирилица, не сгреши от незнание. Информацията е публична и се проверява за трийсет секунди. Те просто не провериха, защото не им хрумна, че има какво да се проверява. Латиницата е подразбиращото се състояние на света, от който са научени.

И тук е неудобната част за нас: българският потребител е закръгляне надолу. Не злонамерено. Просто статистически. Ако в примерите, върху които е учен един модел, кирилицата се среща рядко, той няма да я забрави - той няма да се сети, че съществува като въпрос.

Затова проверката остава наша работа. Не защото инструментът е лош, а защото инструментът е настроен за друг материал.


Чукът може да кове. Не може да реши какво.



От гаража


Накрая не избрах нито една от петте. Взех структурата и визуалния актив на GPT, гласа на Grok и типографията, която липсваше на всички. Смених Impact с Oswald, Arial с Golos Text, Courier New с JetBrains Mono - и трите с локални woff2 и пълна кирилица.

После оправих релативния og:image, абсолютизирах canonical, свих social картата от 2,2 мегабайта на 168 килобайта, дадох резерва на скрития курсор и спрях анимационния цикъл, когато мишката не мърда.

И направих терминалния блок да работи наистина. Беше картинка на терминал - <pre> с мигащ курсор. Сега приема команди, има история, Tab допълване и екраниран вход. Ако JavaScript не се зареди, полето изобщо не се показва.

Това последното е принципът, който изнесох от целия тест. Не слагай на страницата нещо, което изглежда като терминал и не отговаря. Металът ме научи на същото много преди кода: шев, който изглежда като шев, но не държи, е по-опасен от липсващ шев.



Ключови думи: AI, шрифтове, кирилица, unicode-range, woff2, Google Fonts, Impact, Space Grotesk, Outfit, Oswald, Golos Text, уеб дизайн, Open Graph, canonical, достъпност, prefers-reduced-motion, ARIA, тест на AI модели, GPT, Grok, Gemini, DeepSeek, Claude
Източници и проверка: подсетовете на всеки шрифт са проверени директно в пакетите на Fontsource и в списъка Languages на Google Fonts. Unicode блокът за кирилица е U+0400 до U+04FF по стандарта на Unicode Consortium. Тестът е проведен на 22.08.2026 с по един опит на модел и еднакъв промпт. Извадката е една - това е наблюдение, не бенчмарк.


toni@dtgarage:~$ whoami
Тони Ангелчовски | Ексклузивно за DTGaraGe
toni@dtgarage:~$ cat LICENSE
🔒 Копирането и препубликуването без разрешение не е позволено.
toni@dtgarage:~$ ./support.sh
☕ Подкрепи DTGaraGe и независимото техническо съдържание
toni@dtgarage:~$ █
 
Top Bottom
🛡️ Този сайт използва аналитични инструменти за подобряване на потребителското изживяване. Никакви лични данни не се събират. С продължаването си в Потока приемаш тази философия на прозрачност и уважение.