Arbeta med TrueType Fonts

Arbeta med TrueType Fonts

Denna guide visar hur man laddar TrueType-fönster, inspekterar deras binära tabelldata, läser råtabellbyter och skapar statiska instanser från variabla fonts med hjälp av TtfInstancer.

TrueType (TTF) fonts är de vanligaste skrivbord och web-fönster format. Aspose.Font FOSS för Python Exponeringar TtfFont för att få tillgång till TTF-specifika tabelldata, glyph blob retrieval, och variabel font axelkontroll.


Ladda upp ett TTF-fönster

FontLoader.open() Auto-detekterar TTF formatet och returnerar en TtfFont-typad objekt. den returnerade instansen ger tillgång till TTF-specifika funktioner som: ttf_tables, get_table_bytes(), och variabel font axis data.

from aspose_font.loader import FontLoader

font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name, font.num_glyphs, "glyphs")

Tillgång till TTF-tabeller

TtfFont.ttf_tables Exponerar A TtfTableSet med namngivna egenskaper för gemensamma bord.

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("kern table present:", tables.kern is not None)

Röd bordsbyggnad

Användning TtfFont.get_table_bytes(tag) för att återställa rå binära tabelldata och TtfFont.set_table_bytes(tag, data) För att skriva modifierade tabellbyter.

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

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
raw_cmap = ttf_font.get_table_bytes("cmap")

Varierande Font Instans

TtfFont.get_axis() Återkommer information om axeln. TtfInstancer.instantiate() producerar A statisk instans från en variabel font vid angivna axelkoordinater.

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

ttf_font: TtfFont = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")
# Get a static instance at wght=700, wdth=75
instance = TtfInstancer.instantiate(ttf_font, {"wght": 700.0, "wdth": 75.0})

Tips och bästa praxis

  • Aldrig använda isinstance(font, TtfFont) Innan du får tillgång till ttf_tables eller get_table_bytes()
  • Användning TtfTableSet.kern Kontrollera tillgänglighet för kärn innan du läser kärntillgångar
  • Variabel font instancing producerar ett nytt fontobjekt; originalet är oförändrat

API Referens sammanfattning

Klass / MetodBeskrivning
TtfFont.ttf_tablesTillgång till TTF-tabell
TtfFont.get_table_bytes(tag)Rödbytter för en namngiven bord
TtfFont.set_table_bytes(tag, data)Skriv modifierade tabellbyter
TtfFont.get_axis()Variabel font axis information
TtfInstancer.instantiate(font, coords)Skapa en statisk instans
TtfTableSet.kernKornbord (Ingen om frånvarande)

Se även

 Svenska