#2 Przywracamy czcionkę Adafruit GFX
Poszukiwanie perfekcji co do piksela
W Lopaka perfekcja co do piksela jest kluczowa. Aby ją osiągnąć, używaj czcionek z biblioteki i podłączaj je w przeglądarce. Brzmi prosto, prawda? Ale znalezienie właściwego formatu czcionki bywa wyzwaniem. Natknąłem się na problemy z ostrością czcionki i odstępami między literami podczas używania biblioteki U8g2 na OLED.
Głębokie zanurzenie w konwersję czcionek
Doprowadziło mnie to do głębokiego zanurzenia się w konwertery BDF, zapomniane repozytoria i starodawnie wyglądające strony internetowe. W końcu FontForge zadziałał! Trudno było zrozumieć jego interfejs, ale dał wyniki. Perfekcja co do piksela osiągnięta w przeglądarce. Ale podróż się nie skończyła.
Wyzwanie Adafruit GFX
Następne wyzwanie: dodanie obsługi Adafruit GFX. Domyślną czcionkę, GLCD, trudno było namierzyć. Dokumentacja Adafruit nie wspominała o używanej czcionce.
Znalazłem sposób na sparsowanie czcionki GLCD przez konwersję tablicy C++ na pełnoprawną czcionkę za pomocą narzędzia. Ale formaty się nie zgadzały, a klasyczna czcionka nie miała listy glifów.
W końcu życzliwa dusza na forum przekonwertowała właściwą wersję ze wszystkimi glifami. Ale nie było sposobu na eksport do BDF. Poszukiwanie uniwersalnego konwertera trwało dalej.
Powrót do 1988: format BDF
Mimo prób stworzenie konwertera z tablicy 8-bitowej na uniwersalny format okazało się zbyt skomplikowane. Podróż, która cofnęła nas do 1988 roku, kiedy BDF wynaleziono do użycia na taśmach magnetycznych.
BDF jest naprawdę stratny, ładne rzeczy nie zrobią tego w jednym kroku, w repozytoriach Debiana/Fedory było kilka konwerterów, jeden to otf2bdf — czy to nie zadziałało, czy to było jak polowanie na shareware
Standardowa czcionka 5x7
To jest „standardowa czcionka 5x7” https://eleif.net/HD44780.html wspomniana tutaj
Ma swoją własną historię, ale nie pamiętam tej dzikiej dygresji, która mogłaby mnie zaprowadzić z powrotem do tych źródeł. To ten typ rzeczy, który pod koniec lat 60. był drukowany samodzielnie w katalogu danych http://hparchive.com/PARTS/HP-LEDs-5082-710x.pdf, ponieważ oczekiwano, że dostarczysz generator znaków wraz ze swoim oprogramowaniem.
Społeczność open source na ratunek
Jak dotąd bez sukcesu… Obawiam się, że nie możemy mieć czcionki Adafruit... a może możemy?
Sytuacja wydawała się beznadziejna, ale społeczność open source przyszła z pomocą. Znaleziono osobę, która pomogła rozwiązać problem, a nawet dostarczyła gotowe rozwiązanie! W końcu udało nam się napisać skrypt tworzący SVG i użyć go do wygenerowania czcionki TrueType. Teraz rzadka, egzotyczna czcionka GLCD jest wreszcie dostępna online w formie TrueType. Sprawdź nasz GitHub. To magia projektu open source.
Współpraca i transformacja
Połączyliśmy się przez Telegram, gdzie podzieliłem się swoimi tajnymi układami nowego wyglądu Lopaka i planami na przyszłość. On podzielił się pomysłami na ulepszenia. Był tak zainspirowany, że w zaledwie kilka dni przepisał strukturę projektu
Znaczącym współtwórcą tej transformacji był Denis, znany też jako deadlink. Jego praca była kluczowa dla ulepszenia Lopaka i uczynienia z niej solidnego narzędzia dla programistów i projektantów. Czcionka jest dostępna w naszym repozytorium GitHub
Ta podróż od początkowo słabej ostrości czcionki do osiągnięcia czcionek perfekcyjnych co do piksela pokazuje znaczenie wytrwałości i współpracy społeczności w projekcie Lopaka. Podkreśla, jak ludzie, a nie tylko technologia, są kluczowi dla naszego sukcesu.