תיאור
כדי לנהל את הגדרות הגופנים ב-Chrome, יש להשתמש ב-API של chrome.fontSettings
.
הרשאות
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)
"sansserif"
"serif"
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"
ScriptCode
קוד סקריפט לפי תקן ISO 15924. סקריפט ברירת המחדל, או הגלובלי, מיוצג על ידי קוד הסקריפט "Zyyy".
טיפוסים בני מנייה (enum)
"Afak"
"Batk"
"Blis"
"Bopo"
"Buhd"
"Cari"
"Cirt"
"Cprt"
"Cyrs"
"Dsrt"
"Geor"
"Geok"
"Glag"
"Gujr"
"Hans"
"Hant"
"Hebr"
"Hluw"
"Hmng"
"Hung"
"Java"
"Jpan"
"Jurc"
"Kali"
"Khar"
"Khmr"
"Khoj"
"Kpel"
"Kthi"
"Lana"
"Latf"
"Latg"
"Latn"
"Lepc"
"Linb"
"Lisu"
"Lyci"
"Lydi"
"Merc"
"Mero"
"Mlym"
"Mtei"
"Mymr"
"Narb"
"Nbat"
"Nkgb"
"Nkoo"
"Ogam"
"Olck"
"Osma"
"Perm"
"Phli"
"Phlp"
"Phlv"
"Phnx"
"Plrd"
"Prti"
"Rjng"
"Runr"
"Samr"
"Sgnw"
"Shaw"
"Shrd"
"Sind"
"Sinh"
"Sylo"
"Syrc"
"Syre"
"Syrj"
"Syrn"
"Takr"
"Tale"
"Taml"
"Tavt"
"Telu"
"Tfng"
"Tglg"
"Tibt"
"Tirh"
"Vaii"
"Visp"
"Wara"
"Xpeo"
"Xsux"
"Zmth"
"Zsym"
"Zyyy"
שיטות
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
)
ניקוי של גודל הגופן הקבוע שמוגדר כברירת מחדל בתוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
)
ניקוי של גודל הגופן שהוגדר כברירת מחדל בתוסף הזה, אם בכלל.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
)
ניקוי הגופן שהוגדר על ידי התוסף הזה, אם יש כזה.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שעבורה יש לנקות את הגופן.
-
סקריפט
ScriptCode אופציונלי
הסקריפט שעבורו יש לנקות את הגופן. אם לא תשמיט, הגדרת הגופן של הסקריפט הגלובלי תימחק.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
)
ניקוי של גודל הגופן המינימלי שהוגדר על ידי התוסף הזה, אם בכלל.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
)
מקבלת את גודל ברירת המחדל של גופנים ברוחב קבוע.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
)
מקבלת את גודל הגופן המוגדר כברירת מחדל.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
)
הפונקציה מקבלת את הגופן של סקריפט מסוים ומשפחת גופנים גנרית.
פרמטרים
-
פרטים
אובייקט
-
genericFamily
משפחת הגופנים הגנרית שעבורה יש לאחזר את הגופן.
-
סקריפט
ScriptCode אופציונלי
הסקריפט שעבורו יש לאחזר את הגופן. אם לא צוין, הגדרת הגופן של הסקריפט הגלובלי (קוד הסקריפט "Zyyy") מאוחזרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. במקום הערך המילולי של מזהה הגופן, זה יכול להיות מזהה הגופן שאליו המערכת מזהה את ערך ההעדפה. לכן,
fontId
יכול להיות שונה מהגופן שהועבר ל-setFont
, אם, למשל, הגופן לא זמין במערכת. המחרוזת הריקה פירושה חזרה להגדרת הגופן הגלובלית של הסקריפט. -
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
-
החזרות
-
Promise<object>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
)
מקבלת רשימה של גופנים במערכת.
פרמטרים
החזרות
-
Promise<FontName[]>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
)
הפונקציה מקבלת את גודל הגופן המינימלי.
פרמטרים
-
פרטים
אובייקט אופציונלי
כרגע הפרמטר הזה לא בשימוש.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
החזרות
-
Promise<object>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
)
המדיניות מגדירה את גודל ברירת המחדל של גופנים ברוחב קבוע.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
)
מגדיר את גודל הגופן שמוגדר כברירת מחדל.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
)
הגדרת הגופן לסקריפט נתון ולמשפחת גופנים כללית.
פרמטרים
-
פרטים
אובייקט
-
fontId
מחרוזת
מזהה הגופן. המחרוזת הריקה פירושה לחזור להגדרת הגופן הגלובלית של הסקריפט.
-
genericFamily
משפחת הגופנים הגנרית שעבורה יש להגדיר את הגופן.
-
סקריפט
ScriptCode אופציונלי
קוד הסקריפט שבו צריך להגדיר את הגופן. אם לא צוין, הגדרת הגופן של הסקריפט הגלובלי (קוד הסקריפט "Zyyy") מוגדרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
)
הגדרת גודל הגופן המינימלי.
פרמטרים
-
פרטים
אובייקט
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 96 ומעלההבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
אירועים
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
מופעל כשמשנים את הגדרת ברירת המחדל של גודל הגופן הקבוע.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
מופעל כשמשנים את הגדרת ברירת המחדל של גודל הגופן.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(details: object) => void
-
פרטים
אובייקט
-
levelOfControl
רמת השליטה שיש לתוסף הזה על ההגדרה.
-
pixelSize
מספר
גודל הגופן בפיקסלים.
-
-
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
מספר
גודל הגופן בפיקסלים.
-
-