Rad s TrueType fontovima
Rad s TrueType fontovima
Ovaj vodič pokazuje kako učitati TrueType fontove, pregledati njihove podatke o binarnoj tablici, čitati sirove bajtove tabele i kreirati statičke instancse iz varijabilnih fontova koristeći TtfInstancer.
TrueType (TTF) fontovi su najčešći desktop i web format. Aspose.Font FOSS za Pythonove eksponate TtfFont za pristup podacima tabele specifičnim za TTF, traženje glifa blob-a;, i varijabilna kontrola osovine fontova.
Upisivanje TTF font-a
FontLoader.open() automatski otkriva TTF format i vraća a TtfFont-objektom koji je vrnut. Vratna instanccija pruža pristup specifičnim TTF-ovim značajkama kao što su: ttf_tables, get_table_bytes(), i podataka o promjenjivoj osovine fontova.
from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name, font.num_glyphs, "glyphs")Prihvaćanje TTF tabela
TtfFont.ttf_tables izloži se: TtfTableSet s imenovanim svojstvima za zajedničke tabele.
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)Prirodne tablične bajtove
Upotreba: TtfFont.get_table_bytes(tag) za prikupljanje sirovih podataka iz binarne tabele i TtfFont.set_table_bytes(tag, data) da napiše modifikovane tabele bajtova.
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")Variabilni font instanci
TtfFont.get_axis() vraća informacije o osi. TtfInstancer.instantiate() proizvodi: U ovom slučaju, u skladu s člankom 16. stavkom 1. točkom (a) ovog članka, se primjenjuje sljedeća pravila:.
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})Savjeti i najbolje prakse
- Uvijek koristiti:
isinstance(font, TtfFont)prije pristupattf_tablesili:get_table_bytes() - Upotreba:
TtfTableSet.kernprovjeriti dostupnost jezgra prije čitanja parova ježda. - Variabilni font instanciranje proizvodi novi objekt šifre; original je nepromenjen
Svrha referentnog API-a
| Klasa / metoda | Opisivanje |
|---|---|
TtfFont.ttf_tables | Prihvat do TTF-ovog skupa tabela |
TtfFont.get_table_bytes(tag) | Prva bajta za imenovanu tablicu |
TtfFont.set_table_bytes(tag, data) | Napisati izmijenjene tabele bajtova |
TtfFont.get_axis() | Informacije o osovini fontova za varijable |
TtfInstancer.instantiate(font, coords) | Stvaranje statičke instance |
TtfTableSet.kern | U slučaju da je to moguće, odredi se: |