עכשיו אפשר להשתמש בשכבות-על של משאבים בזמן ריצה (RRO) כדי לשנות גופנים. על ידי הוספת תוספים מותאמים אישית כדי ליצור חבילת גופנים, אפשר להשתמש בגופנים בעיצובים ולהשתמש ברכיבי RRO כדי להחיל להתאמות אישיות.
מבצעים את המשימות הבאות:
תקבלו דוגמה למבנה קובץ וקבצים לדוגמה custom-fonts.zip. מורידים את הקובץ הזה ומחלצים אותו באופן מקומי לשימוש אישי.
יצירה של חבילת גופנים
כדי ליצור חבילת גופנים:
- צריך להוסיף את כל קובצי הגופנים
ttf
לחבילת הגופנים מחיצהvendor
. לדוגמה:vendor/[oem]/fonts/[oem]-sans/
- יוצרים את הקובץ
Android.mk
לחבילת הגופנים. לדוגמה:vendor/[oem]/fonts/[oem]-[fontname]/Android.mk
- חשוב לוודא שהמודול יותקן במחיצה
product
תיקייה אחת (etc
). כדי לעשות זאת, מוודאים שהמודול כולל את הדגלים הבאים:LOCAL_MODULE_CLASS := ETC LOCAL_PRODUCT_MODULE := true LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT)/fonts
הקוד לדוגמה שסופק למעלה ממחיש הגדרה מלאה של מודול חבילת הגופנים.
- יוצרים קובץ בשם
fonts.mk
לחבילת הגופנים ומוסיפים את הגופןttf
קבצים אלPRODUCT_PACKAGES
. לדוגמה:vendor/[oem]/fonts/[oem]-[fontname]/fonts.mk
לדוגמה:
PRODUCT_PACKAGES := \ [font name].ttf \
יצירת חבילת שכבת-על למכשיר
- יוצרים מודול בשם
fonts_customization.xml
שיתווסף ל-build. המודול הזה מפנה לקובץfonts_customization.xml
שמכיל את הגופן משפחות וקוראים לקובצי ה-create של כל חבילות הגופנים. לדוגמה:vendor/[oem]/[device]_overlay/fonts/Android.mk
- יוצרים את משפחות הגופנים:
vendor/[oem]/[device]_overlay/fonts/fonts_customization.xml
רמת הבסיס של הקובץ חייבת להיות תג
fonts-modification
. הוסף משפחות גופנים לכל אחת מחבילות הגופנים ברכיב הזה. בנוסף, מוסיפיםcustomizationType="new-named-family"
לכל משפחת גופנים ויוצרים מוודאים שלכל אחת מהן יש מאפייןname
. השם הזה ישמש מאוחר יותר כדי לגשת אל של משפחת הגופנים. צריך להוסיף את הקובץ הזה אלfonts_customizations.xml
שהוגדר קודם לכן ב-Android.mk
.הדוגמה שלמעלה מכילה קובץ
fonts_customization.xml
חוקי. - יצירה של
fonts.mk
. לדוגמה:vendor/[oem]/[device]_overlay/fonts/fonts.mk
- מוסיפים
fonts_customization.xml
מתחת לדגלPRODUCT_PACKAGES
. - שולחים קריאה לכל אחת מחבילות הגופנים שנוצרו קודם לכן.
$(call inherit-product-if-exists, vendor/[oem]/fonts/[oem]-[fontname]/fonts.mk)
- צריך להוסיף את מודול הגופן ל-build בקטע
PRODUCT_PACKAGES
, ואז ליצור מחדש. הגופנים יותקנו במערכת. - יש לוודא שקובצי הגופנים של
ttf
נמצאים ב תיקייה אחת (/product/fonts
) במכשיר. - יש לוודא שהכתובת
fonts_customization.xml
נמצאת ב/product/etc/
בתאריך במכשיר.
שימוש במשפחת הגופנים החדשה של המערכת
כדי להשתמש במשפחת הגופנים החדשה של המערכת:
<style name="customstyle"> <item name="android:fontFamily">customfontfamily</item> </style>