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 tillttf_tablesellerget_table_bytes() - Användning
TtfTableSet.kernKontrollera 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 / Metod | Beskrivning |
|---|---|
TtfFont.ttf_tables | Tillgå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.kern | Kornbord (Ingen om frånvarande) |