chrome.fontSettings

refresh date: 2026-09-25 robots: noindex

الوصف

يمكنك استخدام واجهة برمجة التطبيقات chrome.fontSettings لإدارة إعدادات الخطوط في 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، وهي مُدرَجة في مرجع واجهة برمجة التطبيقات أدناه. عندما تحدّد صفحة ويب مجموعة خطوط عامة، يختار Chrome الخط استنادًا إلى الإعداد المقابل. إذا لم يتم تحديد مجموعة خطوط عامة، يستخدم Chrome الإعداد الخاص بمجموعة الخطوط العامة "القياسية".

عندما تحدّد صفحة ويب لغة معيّنة، يختار Chrome الخط استنادًا إلى الإعدادات الخاصة بنص اللغة المقابلة. في حال عدم تحديد لغة، يستخدم Chrome الإعداد التلقائي أو العام للنص البرمجي.

يتم تحديد نصوص اللغات المتوافقة من خلال رمز النص البرمجي ISO 15924، ويتم إدراجها في مرجع واجهة برمجة التطبيقات أدناه. من الناحية الفنية، لا تقتصر إعدادات 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' }
);

لتجربة واجهة برمجة التطبيقات هذه، يمكنك تثبيت مثال على واجهة برمجة التطبيقات fontSettings من مستودع 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

"آفاق"

"Arab"

"Aran"

"Armi"

"Armn"

"Avst"

"بالي"

"Bamu"

"صوت جهير"

"Batk"

"Beng"

"Blis"

"Bopo"

"Brah"

"Brai"

"Bugi"

"Buhd"

"Cakm"

"علب"

"Cari"

"Cham"

"Cher"

"Cirt"

"Copt"

"Cprt"

"Cyrl"

"Cyrs"

"Deva"

"Dsrt"

"Dupl"

"Egyd"

"Egyh"

"Egyp"

"Elba"

"Ethi"

"Geor"

"Geok"

"Glag"

"Goth"

"Gran"

"Grek"

"Gujr"

"Guru"

"تعليق"

"هاني"

"Hano"

"Hans"

"Hant"

"Hebr"

"Hluw"

"Hmng"

"Hung"

"Inds"

"Ital"

"Java"

"Jpan"

"Jurc"

"Kali"

"Khar"

"Khmr"

"Khoj"

"Knda"

"Kpel"

"Kthi"

"لانا"

"Laoo"

"Latf"

"Latg"

"Latn"

"Lepc"

"Limb"

"لينا"

"Linb"

"ليسو"

"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"

"سمر"

"سارة"

"سرب"

"Saur"

"Sgnw"

"Shaw"

"Shrd"

"Sind"

"Sinh"

"Sora"

"Sund"

"Sylo"

"Syrc"

"Syre"

"Syrj"

"Syrn"

"Tagb"

"Takr"

"Tale"

"Talu"

"Taml"

"Tang"

"Tavt"

"Telu"

"Teng"

"Tfng"

"Tglg"

"ثاء"

"التايلاندية"

"Tibt"

"Tirh"

"Ugar"

"Vaii"

"Visp"

"Wara"

"Wole"

"Xpeo"

"Xsux"

"Yiii"

"Zmth"

"Zsym"

"Zyyy"

الطُرق

clearDefaultFixedFontSize()

Promise
chrome.fontSettings.clearDefaultFixedFontSize(
  details?: object,
  callback?: function,
)
: Promise<void>

يؤدي هذا الإجراء إلى محو حجم الخط الثابت التلقائي الذي تم ضبطه من خلال هذه الإضافة، إن وُجد.

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

clearDefaultFontSize()

Promise
chrome.fontSettings.clearDefaultFontSize(
  details?: object,
  callback?: function,
)
: Promise<void>

لمحو حجم الخط التلقائي الذي تم ضبطه من خلال هذه الإضافة، إن وُجد.

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

clearFont()

Promise
chrome.fontSettings.clearFont(
  details: object,
  callback?: function,
)
: Promise<void>

لمحو الخط الذي تم ضبطه من خلال هذه الإضافة، إن وُجد.

المعلمات

  • التفاصيل

    عنصر

    • genericFamily

      مجموعة الخطوط العامة التي يجب محو الخط لها

    • نص برمجي

      ScriptCode اختيارية

      النص الذي يجب محو الخط الخاص به. في حال حذفها، يتم محو إعدادات خط النص العام.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

clearMinimumFontSize()

Promise
chrome.fontSettings.clearMinimumFontSize(
  details?: object,
  callback?: function,
)
: Promise<void>

يؤدي هذا الإجراء إلى محو الحد الأدنى لحجم الخط الذي تم ضبطه من خلال هذه الإضافة، إن وُجد.

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getDefaultFixedFontSize()

Promise
chrome.fontSettings.getDefaultFixedFontSize(
  details?: object,
  callback?: function,
)
: Promise<object>

للحصول على الحجم التلقائي للخطوط ذات العرض الثابت

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      عنصر

      • levelOfControl

        مستوى التحكّم الذي تملكه هذه الإضافة في الإعداد.

      • pixelSize

        الرقم

        حجم الخط بالبكسل

المرتجعات

  • وعد<كائن>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getDefaultFontSize()

Promise
chrome.fontSettings.getDefaultFontSize(
  details?: object,
  callback?: function,
)
: Promise<object>

للحصول على حجم الخط التلقائي

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      عنصر

      • levelOfControl

        مستوى التحكّم الذي تملكه هذه الإضافة في الإعداد.

      • pixelSize

        الرقم

        حجم الخط بالبكسل

المرتجعات

  • وعد<كائن>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getFont()

Promise
chrome.fontSettings.getFont(
  details: object,
  callback?: function,
)
: Promise<object>

للحصول على الخط الخاص بنص معيّن ومجموعة خطوط عامة

المعلمات

  • التفاصيل

    عنصر

    • genericFamily

      مجموعة الخطوط العامة التي يجب استرداد الخط لها

    • نص برمجي

      ScriptCode اختيارية

      النص الذي يجب استرداد الخط له في حال حذف هذه السمة، يتم استرداد إعدادات الخط للنص البرمجي العام (رمز النص البرمجي "Zyyy").

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      عنصر

      • fontId

        سلسلة

        رقم تعريف الخط بدلاً من قيمة الإعداد المفضّل لمعرّف الخط الحرفي، قد يكون هذا هو معرّف الخط الذي يحل النظام قيمة الإعداد المفضّل له. لذلك، يمكن أن يختلف fontId عن الخط الذي تم تمريره إلى setFont، على سبيل المثال، إذا لم يكن الخط متاحًا على النظام. تشير السلسلة الفارغة إلى الرجوع إلى إعداد خط النص البرمجي العام.

      • levelOfControl

        مستوى التحكّم الذي تملكه هذه الإضافة في الإعداد.

المرتجعات

  • وعد<كائن>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getFontList()

Promise
chrome.fontSettings.getFontList(
  callback?: function,
)
: Promise<FontName[]>

تتيح الحصول على قائمة بالخطوط على النظام.

المعلمات

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (results: FontName[]) => void

المرتجعات

  • Promise<FontName[]>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getMinimumFontSize()

Promise
chrome.fontSettings.getMinimumFontSize(
  details?: object,
  callback?: function,
)
: Promise<object>

للحصول على الحد الأدنى لحجم الخط

المعلمات

  • التفاصيل

    object اختياري

    هذه المَعلمة غير مستخدَمة حاليًا.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      عنصر

      • levelOfControl

        مستوى التحكّم الذي تملكه هذه الإضافة في الإعداد.

      • pixelSize

        الرقم

        حجم الخط بالبكسل

المرتجعات

  • وعد<كائن>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

setDefaultFixedFontSize()

Promise
chrome.fontSettings.setDefaultFixedFontSize(
  details: object,
  callback?: function,
)
: Promise<void>

يحدّد هذا الإعداد الحجم التلقائي للخطوط الثابتة العرض.

المعلمات

  • التفاصيل

    عنصر

    • pixelSize

      الرقم

      حجم الخط بالبكسل

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

setDefaultFontSize()

Promise
chrome.fontSettings.setDefaultFontSize(
  details: object,
  callback?: function,
)
: Promise<void>

لضبط حجم الخط التلقائي

المعلمات

  • التفاصيل

    عنصر

    • pixelSize

      الرقم

      حجم الخط بالبكسل

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

setFont()

Promise
chrome.fontSettings.setFont(
  details: object,
  callback?: function,
)
: Promise<void>

لضبط الخط لنص معيّن ومجموعة خطوط عامة

المعلمات

  • التفاصيل

    عنصر

    • fontId

      سلسلة

      رقم تعريف الخط تعني السلسلة الفارغة الرجوع إلى إعداد خط النص البرمجي العام.

    • genericFamily

      مجموعة الخطوط العامة التي يجب ضبط الخط لها

    • نص برمجي

      ScriptCode اختيارية

      رمز النص البرمجي الذي يجب ضبط الخط عليه. في حال حذف هذه السمة، يتم ضبط إعدادات الخط للنص العام (رمز النص "Zyyy").

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

setMinimumFontSize()

Promise
chrome.fontSettings.setMinimumFontSize(
  details: object,
  callback?: function,
)
: Promise<void>

يضبط هذا الإعداد الحدّ الأدنى لحجم الخط.

المعلمات

  • التفاصيل

    عنصر

    • pixelSize

      الرقم

      حجم الخط بالبكسل

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعد<فراغ>

    الإصدار 96 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

الفعاليات

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

        الرقم

        حجم الخط بالبكسل