Betűtípus-ellenőrzés

Betűtípus-ellenőrzés

Ez a kézikönyv bemutatja, hogyan lehet megolvasni az elnevezett táblázat tulajdonságait, visszahozni a nyers bináris táblák adatait és módosított tábla-bitéket újra egy TrueType betűtípusba írni.

A TrueType és OpenTybe betűtípusok bináris táblázatokból állnak, amelyek mindegyikét 4 bájtos címkéje azonosítja. TtfTableSet a Python nevű tulajdonságok közös táblázatok számára, és TtfFont előirányzik: A nyers bájt-hozzáférés minden táblázathoz.


Névjegyző táblázat olvasása

TtfTableSet Kifejti a head, hhea, maxp, os2, name, post, cmap, loca, hmtx és kern táblázatokat.

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
tables = ttf_font.ttf_tables

print("head table:", tables.head is not None)
print("kern table:", tables.kern is not None)

Nyers táblázat-bitéket olvasni

TtfFont.get_table_bytes(tag) a négy karakteres címkével azonosított bármely táblázat teljes bináris tartalmát adja vissza, lehetővé téve az alacsony szintű vizsgálatot vagy egyedi elemzést.

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
raw_name = ttf_font.get_table_bytes("name")
print(f"name table: {len(raw_name)} bytes")

A módosított táblázat-bitéinek írása

TtfFont.set_table_bytes(tag, data) A rendszer a táblázat bináris tartalmát helyettesíti, így lehetővé teszi az egyedi táblák módosítását, például a GSUB szabályok javítása vagy a névjegyzékek frissítése.

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
modified_bytes = b"..."  # your modified table
ttf_font.set_table_bytes("GSUB", modified_bytes)

Tippek és legjobb gyakorlatok

  • A csekk. tables.kern is not None kerning-adatok elérése előtt.
  • TtfTableSet.get_raw(tag) és a következők: set_raw(tag, data) A nevük: get_table_bytes / set_table_bytes
  • Használat FontCleaner.clean_for_web() a táblázatok manuális eltávolítása helyett, hogy elkerüljék az egységesség problémáit.

API-referencia összefoglaló

Rendszer / módszerLeírás
TtfFont.ttf_tablesA névleges táblázat tulajdonságaihoz való hozzáférés
TtfFont.get_table_bytes(tag)Olvasni a nyers bináris táblázat adatait.
TtfFont.set_table_bytes(tag, data)A módosított táblázat adatainak írása
TtfTableSet.get_raw(tag)A get_table_bytes álneve
TtfTableSet.set_raw(tag, data)A set_table_bytes álneve

Lásd még:

 Magyar