עבודה עם TrueType Fonts
עבודה עם TrueType Fonts
מדריך זה מראה כיצד להעלות טקסטים TrueType, לבדוק את נתוני הטבלה הבינארית שלהם, לקרוא בייטים טבלה ירוקים, וליצור דוגמאות סטטיות מתוך טפטים משתנים באמצעות TtfInstancer.
טקסטים TrueType (TTF) הם פורמט הטקסט הנפוץ ביותר עבור שולחן העבודה ו- Web. על פי Python Exposes 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 להציג A 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 | שולחן כביסה (אף אחד אם לא) |