תיאור
משתמשים ב-chrome.fontSettings
API כדי לנהל את הגדרות הגופן של Chrome.
הרשאות
fontSettings
מניפסט
כדי להשתמש ב-Font Settings API, צריך להצהיר על ההרשאה fontSettings בקובץ המניפסט של התוסף. לדוגמה:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
משפחות גופנים וסקריפטים גנריים
Chrome מאפשר להגדיר חלק מהגופנים בהתאם למשפחות גופנים גנריות ולכתבי שפות מסוימים. לדוגמה, הגופן שמשמש לסינית פשוטה מסוג Sans-Serif עשוי להיות שונה מהגופן שמשמש ליפנית מסוג Serif.
משפחות הגופנים הגנריות שנתמכות ב-Chrome מבוססות על משפחות גופנים גנריות של CSS ומפורטות בהפניה ל-API שבהמשך. כשדף אינטרנט מציין משפחת גופנים כללית, Chrome בוחר את הגופן על סמך ההגדרה המתאימה. אם לא מציינים משפחת גופנים גנרית, Chrome משתמש בהגדרה של משפחת הגופנים הגנרית 'רגילה'.
כשדף אינטרנט מציין שפה, Chrome בוחר את הגופן על סמך ההגדרה של סקריפט השפה המתאים. אם לא מציינים שפה, Chrome משתמש בהגדרה של ברירת המחדל, או בסקריפט הגלובלי.
הכתיבים של השפות הנתמכות מצוינים באמצעות קוד כתיב ISO 15924 ומפורטים בהמשך במאמר בנושא הפניה ל-API. מבחינה טכנית, ההגדרות של Chrome לא מוגדרות לכל סקריפט בנפרד, אלא גם בהתאם לשפה. לדוגמה, דפדפן Chrome בוחר את הגופן לקירילית (קוד הכתב ISO 15924 'Cyrl') כשדף אינטרנט מציין את השפה הרוסית, והוא משתמש בגופן הזה לא רק לכתב קירילי אלא לכל מה שהגופן מכסה, כמו לטינית.
דוגמאות
הקוד הבא מחזיר את הגופן הרגיל לערבית.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
בקטע הקוד הבא מוגדר גופן Sans-Serif ליפנית.
chrome.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"
"fantasy"
"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"
"controlled_by_this_extension"
ScriptCode
קוד סקריפט לפי תקן ISO 15924. תסריט ברירת המחדל, או התסריט הגלובלי, מיוצג על ידי קוד התסריט Zyyy.
Enum
"Afak"
"Arab"
"Armi"
"Armn"
"Avst"
"Bali"
"Bamu"
"Bass"
"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"
"Goth"
"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"
"Lisu"
"Loma"
"Lyci"
"Lydi"
"Mand"
"Mani"
"Maya"
"Mend"
"Merc"
"Mero"
"Mlym"
'Moon'
"Mong"
"Mroo"
"Mtei"
"Mymr"
"Narb"
"Nbat"
"Nkgb"
"Nkoo"
"Nshu"
"Ogam"
"Olck"
"Orkh"
"Orya"
"Osma"
"Palm"
"Perm"
"Phag"
"Phli"
"Phlp"
"Phlv"
"Phnx"
"Plrd"
"Prti"
"Rjng"
"Roro"
"Runr"
"Samr"
"Sara"
"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,
callback?: function,
): Promise<void>
מנקה את גודל הגופן הקבוע שמוגדר כברירת מחדל על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
): Promise<void>
מנקה את גודל הגופן שמוגדר כברירת מחדל על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
): Promise<void>
מוחקת את הגופן שהוגדר על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שצריך להסיר את הגופן שלה.
-
סקריפט
ScriptCode אופציונלי
התסריט שצריך להסיר ממנו את הגופן. אם לא מציינים את התג הזה, הגדרת הגופן של התסריט הגלובלי מתבטלת.
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
): Promise<void>
מנקה את גודל הגופן המינימלי שהוגדר על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<object>
מחזירה את גודל ברירת המחדל של גופנים ברוחב קבוע.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
): Promise<object>
מחזירה את גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
): Promise<object>
מחזירה את הגופן של סקריפט נתון ומשפחת גופנים כללית.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שממנה צריך לאחזר את הגופן.
-
סקריפט
ScriptCode אופציונלי
התסריט שממנו צריך לאחזר את הגופן. אם לא מציינים את המאפיין, המערכת מאחזרת את הגדרת הגופן של הסקריפט הגלובלי (קוד הסקריפט Zyyy).
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. במקום ערך ההעדפה המילולי של מזהה הגופן, יכול להיות שזה המזהה של הגופן שהמערכת פותרת את ערך ההעדפה שלו. לכן, יכול להיות ש-
fontId
יהיה שונה מהגופן שמועבר אלsetFont
, למשל אם הגופן לא זמין במערכת. מחרוזת ריקה מציינת חזרה להגדרת הגופן של הסקריפט הגלובלי. -
levelOfControl
רמת השליטה של התוסף בהגדרה.
-
-
החזרות
-
Promise<object>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
): Promise<FontName[]>
מקבל רשימה של גופנים במערכת.
פרמטרים
החזרות
-
Promise<FontName[]>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
): Promise<object>
מחזירה את גודל הגופן המינימלי.
פרמטרים
-
פרטים
אובייקט אופציונלי
הפרמטר הזה לא בשימוש כרגע.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה של התוסף בהגדרה.
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
): Promise<void>
הגדרת גודל ברירת המחדל לגופנים ברוחב קבוע.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
): Promise<void>
הגדרת גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
): Promise<void>
הגדרת הגופן לסקריפט נתון ולמשפחת גופנים כללית.
פרמטרים
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. מחרוזת ריקה מציינת חזרה להגדרת הגופן הגלובלית של הסקריפט.
-
genericFamily
משפחת הגופנים הגנרית שאליה צריך להגדיר את הגופן.
-
סקריפט
ScriptCode אופציונלי
קוד הסקריפט שבו צריך להגדיר את הגופן. אם לא מציינים גופן, מוגדר הגופן של הסקריפט הגלובלי (קוד הסקריפט Zyyy).
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
): Promise<void>
הגדרת גודל הגופן המינימלי.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
number
גודל הגופן בפיקסלים.
-
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
אירועים
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
גודל הגופן בפיקסלים.
-
-