Google betűtípusok BASIC-ben
Nevezz meg egy betűtípus-családot, és valódi vektoros szöveget kapsz bitmap-lap helyett, azzal a várakozással, amit az aszinkron betöltés megkövetel, és azzal, ami a játék exportálása után történik.
Mire ez való#
A klasszikus BASIC egy betűtípus-képből rajzolja a szöveget: egy
karakterlapból, amit a TextFontImage(text, image) állít be. Ez működik, ez
az, amit a nyelvjárás mindig is csinált, és pontosan ott is marad. De egy
bitmap-lap nem skálázódik, és úgy is néz ki, amilyen.
A LoadGoogleFont egy családot nevez meg helyette:
font = LoadGoogleFont("Inter")
PrintFont(font)
Print("Hello")
DO
Sync()
LOOP
Semmi nem tűnik el. A LoadFont, a TextFontImage és a bitmap-útvonal
továbbra is működik, és egy program keverheti őket.
A várakozás nem opcionális#
Egy betűtípus egy fájl, és a fájl azután érkezik meg, hogy a hívás visszatért. Ha a landolása előtt nyomtatsz, az első képkockák a tartalék betűtípussal jönnek ki, ami úgy olvasható, mintha "a parancs nem csinált semmit".
A GoogleFontReady az, amire várni kell:
font = LoadGoogleFont("Inter")
ready = 0
DO
IF ready = 0
IF GoogleFontReady(font) = 1
PrintFont(font)
ready = 1
ENDIF
ENDIF
Print("Hello")
Sync()
LOOP
Figyelmeztetés: ugyanez a csapda az alkalmazás saját moduljait is elkapta egyszer. Egy betűtípus deklarálása nem azonos a betöltésével: egy vászon csak akkor tölt le egy családot, amikor valami kéri, és a válasz egy vagy több képkockával később érkezik.
Böngészés a családok között#
A motor egy listát szállít a családokról, és egy program képes olvasni azt, ami egy betűtípus-választóhoz kell egy játékon belül:
count = GoogleFontCount()
FOR i = 0 TO count - 1
Print(GoogleFontName(i))
NEXT i
A lista tölt fel egy választót; nem korlát. Bármelyik Google család betöltődik
névvel a LoadGoogleFont által, listázva vagy sem.
Mi történik exportáláskor#
| Hol fut a játék | Mi történik |
|---|---|
| A szerkesztő | A család a Google-tól töltődik le, amikor először meg van nevezve. |
| Böngészős export | Ugyanaz, és a fájl a buildből szolgál ki, amikor az exportáló be tudta csomagolni. |
| Natív vagy Bevy build | A fájlnak a builddal együtt kellett utaznia. Nincs hálózat. |
Az exportáló beolvassa a programodat, megtalál minden egyszerű szövegként
megnevezett családot, letölti, és kiírja az assets/fonts/<Family>.woff2
helyre. Az a build ezután offline is működik.
Figyelmeztetés: egy futásidőben kiszámított család nem található meg a program olvasásával, így nem csomagolható be. Az exportjelentés ezt jelzi, a build pedig visszaesik az alapértelmezett betűtípusra. Írj
LoadGoogleFont("Inter")-t, neLoadGoogleFont(names[i])-t, ha valaminek túl kell élnie egy exportot.
A parancsok#
| Parancs | Mit csinál |
|---|---|
LoadGoogleFont(family) | Betölti a családot, visszaad egy id-t |
LoadGoogleFont(fontID, family) | Ugyanaz, egy általad választott id-vel |
GoogleFontReady(fontID) | 1, amint a fájl használható |
GoogleFontCount() | Hány családot kínál a lista |
GoogleFontName(index) | Egy családnév a listából |
Minden más a meglévő betűtípus-gépezet: PrintFont(id) a Print-hez,
TextFontSet(text, id) egy Text objektumhoz, DeleteFont(id) egy betűtípus
eldobásához.
Továbblépés#
- A teljes család, minden paraméterrel: a Font parancsok.
- Maga a nyelvjárás: a BASIC nyelv.