תיאור
אפשר להשתמש ב-API של chrome.fontSettings כדי לנהל את הגדרות הגופנים ב-Chrome.
הרשאות
fontSettingsכדי להשתמש ב-Font Settings API, צריך להצהיר על ההרשאה "fontSettings" במניפסט של התוסף. לדוגמה:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
מושגים ושימוש
ב-Chrome, חלק מהגדרות הגופנים תלויות במשפחות גופנים כלליות מסוימות ובכתבי שפה. לדוגמה, הגופן שמשמש לסינית פשוטה ללא תגים עשוי להיות שונה מהגופן שמשמש ליפנית עם תגים.
משפחות הגופנים הכלליות שנתמכות ב-Chrome מבוססות על משפחות הגופנים הכלליות של CSS, והן מפורטות בקטע GenericReference. כשדף אינטרנט מציין משפחת גופנים כללית, Chrome בוחר את הגופן על סמך ההגדרה המתאימה. אם לא צוינה משפחת גופנים כללית, Chrome משתמש בהגדרה של משפחת הגופנים הכללית "רגיל".
כשבדף אינטרנט מצוינת שפה, Chrome בוחר את הגופן לפי ההגדרה של הכתב בשפה המתאימה. אם לא מצוינת שפה, Chrome משתמש בהגדרה של הסקריפט שמוגדר כברירת מחדל או כגלובלי.
הכתבים הנתמכים בשפות השונות מצוינים בקוד הכתב של ISO 15924, ומפורטים בקטע ScriptCode. מבחינה טכנית, ההגדרות של Chrome לא נקבעות רק לפי הכתב, אלא גם לפי השפה. לדוגמה, Chrome בוחר את הגופן לכתב קירילי (קוד הכתב ISO 15924 "Cyrl") כשבדף אינטרנט מצוינת השפה הרוסית, ומשתמש בגופן הזה לא רק לכתב קירילי אלא לכל מה שהגופן מכסה, כמו לטינית.
דוגמאות
הקוד הבא מקבל את הגופן הרגיל לערבית.
browser.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
קטע הקוד הבא מגדיר את הגופן sans-serif ליפנית.
browser.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
כדי לנסות את ה-API הזה, מתקינים את הדוגמה של fontSettings API ממאגר chrome-extension-samples.
סוגים
FontName
מייצג שם של גופן.
מאפיינים
-
displayName
מחרוזת
השם המוצג של הגופן.
-
fontId
מחרוזת
מזהה הגופן.
GenericFamily
משפחת גופנים כללית ב-CSS.
טיפוסים בני מנייה (enum)
"standard"
"sansserif"
"serif"
"fixed"
"cursive"
"פנטזיה"
"math"
LevelOfControl
אחד מהערכים הבאים:
not\_controllable: לא ניתן לשלוט בהגדרה באמצעות תוסף כלשהו
controlled\_by\_other\_extensions: נשלטת על ידי תוספים עם קדימות גבוהה יותר
controllable\_by\_this\_extension: ניתן לשלוט בהגדרה באמצעות התוסף הזה
controlled\_by\_this\_extension: נשלטת על ידי התוסף הזה
טיפוסים בני מנייה (enum)
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
thought
"controlled_by_this_extension"
ScriptCode
קוד כתב לפי תקן ISO 15924. הכתב שמוגדר כברירת מחדל, או הכתב הגלובלי, מיוצג על ידי קוד הכתב "Zyyy".
טיפוסים בני מנייה (enum)
"Afak"
"ערבי"
"Aran"
"Armi"
"Armn"
"Avst"
"Bali"
"Bamu"
"בס"
"Batk"
"Beng"
"Blis"
"Bopo"
"Brah"
"Brai"
"Bugi"
"Buhd"
"Cakm"
"Cans"
"Cari"
"Cham"
"Cher"
"Cirt"
"Copt"
"Cprt"
"Cyrl"
"Cyrs"
"Deva"
"Dsrt"
"Dupl"
"Egyd"
"Egyh"
"Egyp"
"Elba"
"Ethi"
"Geor"
"Geok"
"Glag"
"גותי"
"Gran"
"Grek"
"Gujr"
"Guru"
"Hang"
"Hani"
"Hano"
"Hans"
"Hant"
"Hebr"
"Hluw"
"Hmng"
"Hung"
"Inds"
"Ital"
"Java"
"Jpan"
"Jurc"
"Kali"
"Khar"
"Khmr"
"Khoj"
"Knda"
"Kpel"
"Kthi"
"Lana"
"Laoo"
"Latf"
"Latg"
"Latn"
"Lepc"
"Limb"
"Lina"
"Linb"
"ליסו"
"Loma"
"Lyci"
"Lydi"
"Mand"
"Mani"
"מאיה"
"Mend"
"Merc"
"Mero"
"Mlym"
"Moon"
"Mong"
"Mroo"
"Mtei"
"Mymr"
"Narb"
"Nbat"
"Nkgb"
"Nkoo"
"Nshu"
"Ogam"
"Olck"
"אורח"
"Orya"
"Osma"
"Palm"
"Perm"
"Phag"
"Phli"
"Phlp"
"Phlv"
"Phnx"
"Plrd"
"Prti"
"Rjng"
"Roro"
"Runr"
"Samr"
"שרה"
"Sarb"
"Saur"
"Sgnw"
"Shaw"
"Shrd"
"Sind"
"Sinh"
"Sora"
"Sund"
"Sylo"
"Syrc"
"Syre"
"Syrj"
"Syrn"
"Tagb"
"Takr"
"Tale"
"Talu"
"Taml"
"Tang"
"Tavt"
"Telu"
"Teng"
"Tfng"
"Tglg"
"Thaa"
"Thai"
"Tibt"
"Tirh"
"Ugar"
"Vaii"
"Visp"
"Wara"
"Wole"
"Xpeo"
"Xsux"
"Yiii"
"Zmth"
"Zsym"
"Zyyy"
Methods
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
): Promise<void>
מנקה את גודל הגופן הקבוע שמוגדר כברירת מחדל על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
): Promise<void>
מנקה את גודל הגופן שמוגדר כברירת מחדל על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
clearFont()
chrome.fontSettings.clearFont(
details: object,
): Promise<void>
הסרת הגופן שהוגדר על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שצריך להסיר את הגופן שלה.
-
סקריפט
ScriptCode אופציונלי
הכתב שבו רוצים להסיר את הגופן. אם לא מציינים את הפרמטר, ההגדרה הגלובלית של גופן הכתב נמחקת.
-
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
): Promise<void>
מנקה את גודל הגופן המינימלי שהוגדר על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
): Promise<object>
מציג את גודל ברירת המחדל של גופנים ברוחב קבוע.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<object>
Chrome מגרסה 96 ואילך
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
): Promise<object>
מקבל את גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<object>
Chrome מגרסה 96 ואילך
getFont()
chrome.fontSettings.getFont(
details: object,
): Promise<object>
מקבל את הגופן של סקריפט נתון ומשפחת גופנים כללית.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שממנה צריך לאחזר את הגופן.
-
סקריפט
ScriptCode אופציונלי
הכתב שעבורו צריך לאחזר את הגופן. אם לא מציינים את קוד הכתב, המערכת מאחזרת את הגדרת הגופן של הכתב הגלובלי (קוד הכתב "Zyyy").
-
החזרות
-
Promise<object>
Chrome מגרסה 96 ואילך
החזרות
-
Promise<FontName[]>
Chrome מגרסה 96 ואילך
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
): Promise<object>
מקבל את גודל הגופן המינימלי.
פרמטרים
-
פרטים
object optional
כרגע הפרמטר הזה לא בשימוש.
החזרות
-
Promise<object>
Chrome מגרסה 96 ואילך
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
): Promise<void>
ההגדרה קובעת את גודל ברירת המחדל של גופנים ברוחב קבוע.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
): Promise<void>
מגדירה את גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
setFont()
chrome.fontSettings.setFont(
details: object,
): Promise<void>
הגדרת הגופן לכתב נתון ולמשפחת גופנים כללית.
פרמטרים
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. המחרוזת הריקה פירושה חזרה להגדרת הגופן של הסקריפט הגלובלי.
-
genericFamily
משפחת הגופנים הגנרית שעבורה צריך להגדיר את הגופן.
-
סקריפט
ScriptCode אופציונלי
קוד הכתב שבו צריך להגדיר את הגופן. אם משמיטים את המאפיין, מוגדרת הגדרת הגופן של הסקריפט הגלובלי (קוד הסקריפט "Zyyy").
-
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
): Promise<void>
הגדרת גודל הגופן המינימלי.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילך
אירועים
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
מופעל כשמשתנה ההגדרה של גודל ברירת המחדל של הגופן הקבוע.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף הזה בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
מופעל כשמשתנה ההגדרה של גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף הזה בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
מופעל כשמתבצע שינוי בהגדרת הגופן.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. אפשר לקרוא את התיאור ב
getFont. -
genericFamily
משפחת הגופנים הגנרית שהגדרת הגופן שלה השתנתה.
-
levelOfControl
רמת השליטה של התוסף הזה בהגדרה.
-
סקריפט
ScriptCode אופציונלי
קוד הסקריפט שהגדרת הגופן שלו השתנתה.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
מופעל כשמשתנה ההגדרה של גודל הגופן המינימלי.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף הזה בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-