Εργασία με TrueType Fonts
Εργασία με TrueType Fonts
Αυτό το εγχειρίδιο δείχνει πώς να φορτώσετε τα γραμματοσειρά TrueType, ελέγξτε τα δεδομένα του δυαδικού πίνακα τους, διαβάστε τις ριζικές μπαίτες του πίεσης και δημιουργήστε στατικές παραδείξεις από μεταβλητές γραμμάρια χρησιμοποιώντας TtfInstancer.
Τα γραμματοσειρά TrueType (TTF) είναι τα πιο κοινά μορφή γραμμάτων desktop και web. Παρουσιάζει το Python TtfFont για την πρόσβαση στα δεδομένα του πίνακα που είναι ειδικά TTF, glyph blob retrieval, και τον έλεγχο του μεταβλητού γραμματοσειράς.
Κατεβάστε μια γραφή TTF
FontLoader.open() Αυτόματη ανίχνευση του μορφής TTF και επιστροφή ενός TtfFont-τυποποιημένο αντικείμενο. η επιστρεφόμενη περίπτωση παρέχει πρόσβαση σε χαρακτηριστικά που είναι ειδικά για το TTF, όπως: ttf_tables, get_table_bytes(),και μεταβλητές γραμματοσειρές δεδομένων.
from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name, font.num_glyphs, "glyphs")Εισαγωγή σε πίνακες TTF
TtfFont.ttf_tables Εμφανίζεται η TtfTableSet με ονομαστικές ιδιότητες για κοινά τραπέζια.
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)Πράσινο τραπέζι
Χρησιμοποιήστε TtfFont.get_table_bytes(tag) να ανακτήσει τα πρώτα δεδομένα του δυαδικού πίνακα και TtfFont.set_table_bytes(tag, data) Να γράψετε τροποποιημένα μπατίδια του πίνακα.
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")Αλλαγές στη γραμματοσειρά
TtfFont.get_axis() Επιστρέφει πληροφορίες για το άξονα. TtfInstancer.instantiate() Παράγει το A στατική παραβολή από μεταβλητή γραμματοσειρά σε καθορισμένες συντονιστικές οξές.
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})Συμβουλές και βέλτιστες πρακτικές
- Πάντα χρησιμοποιείτε
isinstance(font, TtfFont)Πριν την πρόσβασηttf_tablesήget_table_bytes() - Χρησιμοποιήστε
TtfTableSet.kernΓια να ελέγξετε την διαθεσιμότητα του κέρματος πριν διαβάσετε τα ζεύγη κέντρων - Η μεταβλητή ένδειξη γραμματοσειράς παράγει ένα νέο αντικείμενο γραμμάτων. το πρωτότυπο είναι αμετάβλεπτο
Συνοπτική αναφορά API
| Κλάση / Μέθοδος | Περιγραφή |
|---|---|
TtfFont.ttf_tables | Πρόσβαση στο TTF πίνακα |
TtfFont.get_table_bytes(tag) | Ακατέργαστες μπάτρες για ένα ονομαστικό τραπέζι |
TtfFont.set_table_bytes(tag, data) | Γράψτε τροποποιημένα μπατίτα πίνακα |
TtfFont.get_axis() | Ενημέρωση για το μεταβλητό κείμενο |
TtfInstancer.instantiate(font, coords) | Δημιουργία στατικής παραδείγματος |
TtfTableSet.kern | Καρκίνος τραπέζι (δεν υπάρχει αν δεν υπάρχει) |