chrome.fontSettings

refresh date: 2026-09-25 robots: noindex

คำอธิบาย

ใช้ chrome.fontSettings API เพื่อจัดการการตั้งค่าแบบอักษรของ Chrome

สิทธิ์

fontSettings

ไฟล์ Manifest

หากต้องการใช้ Font Settings API คุณต้องประกาศสิทธิ์ "fontSettings" ใน manifest ของส่วนขยาย เช่น

{
  "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 จะเลือกแบบอักษรสำหรับซีริลลิก (รหัสสคริปต์ "Cyrl" ตามมาตรฐาน ISO 15924) เมื่อหน้าเว็บระบุภาษารัสเซีย และจะใช้แบบอักษรนี้ไม่เพียงแต่สำหรับสคริปต์ซีริลลิกเท่านั้น แต่ยังใช้กับ ทุกอย่างที่แบบอักษรครอบคลุม เช่น ละติน

ตัวอย่าง

โค้ดต่อไปนี้จะรับแบบอักษรมาตรฐานสำหรับภาษาอาหรับ

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 นี้ ให้ติดตั้งตัวอย่าง API ของ fontSettings จากที่เก็บ chrome-extension-samples

ประเภท

FontName

แสดงชื่อแบบอักษร

พร็อพเพอร์ตี้

  • displayName

    สตริง

    ชื่อที่แสดงของแบบอักษร

  • fontId

    สตริง

    รหัสแบบอักษร

GenericFamily

ชุดแบบอักษรทั่วไปของ CSS

ค่าแจกแจง

"มาตรฐาน"

"sansserif"

"serif"

"แก้ไขแล้ว"

"ตัวเขียน"

"แฟนตาซี"

"คณิตศาสตร์"

LevelOfControl

อย่างใดอย่างหนึ่งต่อไปนี้ not\_controllable: ส่วนขยายใดๆ ควบคุมไม่ได้ controlled\_by\_other\_extensions: ส่วนขยายที่มีลำดับความสำคัญสูงกว่าควบคุมได้ controllable\_by\_this\_extension: ส่วนขยายนี้ควบคุมได้ controlled\_by\_this\_extension: ส่วนขยายนี้ควบคุมได้

ค่าแจกแจง

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"

ScriptCode

รหัสสคริปต์ ISO 15924 สคริปต์เริ่มต้นหรือสคริปต์ส่วนกลางจะแสดงด้วยรหัสสคริปต์ "Zyyy"

ค่าแจกแจง

"Afak"

"อาหรับ"

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

"อียิปต์"

"Elba"

"Ethi"

"Geor"

"Geok"

"Glag"

"โกธิค"

"Gran"

"Grek"

"Gujr"

"กูรู"

"Hang"

"Hani"

"Hano"

"ฮันส์"

"Hant"

"Hebr"

"Hluw"

"Hmng"

"Hung"

"Inds"

"Ital"

"Java"

"Jpan"

"Jurc"

"Kali"

"Khar"

"Khmr"

"Khoj"

"Knda"

"Kpel"

"Kthi"

"ลานา"

"Laoo"

"Latf"

"Latg"

"Latn"

"Lepc"

"แขนขา"

"Lina"

"Linb"

"Lisu"

"Loma"

"Lyci"

"Lydi"

"Mand"

"Mani"

"มายา"

"ซ่อม"

"Merc"

"Mero"

"Mlym"

"ดวงจันทร์"

"มอง"

"Mroo"

"Mtei"

"Mymr"

"Narb"

"Nbat"

"Nkgb"

"Nkoo"

"Nshu"

"โอกัม"

"Olck"

"Orkh"

"Orya"

"Osma"

"ปาล์ม"

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

"นิทาน"

"Talu"

"Taml"

"Tang"

"Tavt"

"Telu"

"เต็ง"

"Tfng"

"Tglg"

"Thaa"

"ไทย"

"Tibt"

"Tirh"

"Ugar"

"Vaii"

"Visp"

"Wara"

"Wole"

"Xpeo"

"Xsux"

"Yiii"

"Zmth"

"Zsym"

"Zyyy"

เมธอด

clearDefaultFixedFontSize()

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

ล้างขนาดแบบอักษรคงที่เริ่มต้นที่ส่วนขยายนี้ตั้งค่าไว้ (หากมี)

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

clearDefaultFontSize()

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

ล้างขนาดแบบอักษรเริ่มต้นที่ส่วนขยายนี้ตั้งค่าไว้ (หากมี)

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

clearFont()

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

ล้างแบบอักษรที่ส่วนขยายนี้ตั้งค่าไว้ (หากมี)

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • genericFamily

      ชุดแบบอักษรทั่วไปที่ควรล้างแบบอักษร

    • แบบตัวเขียน

      ScriptCode ไม่บังคับ

      สคริปต์ที่ควรล้างแบบอักษร หากละเว้น ระบบจะล้างการตั้งค่าแบบอักษรของสคริปต์ส่วนกลาง

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

clearMinimumFontSize()

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

ล้างขนาดแบบอักษรขั้นต่ำที่ส่วนขยายนี้ตั้งไว้ (หากมี)

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getDefaultFixedFontSize()

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

รับขนาดเริ่มต้นสำหรับแบบอักษรที่มีความกว้างคงที่

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล

การคืนสินค้า

  • Promise<object>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getDefaultFontSize()

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

รับขนาดแบบอักษรเริ่มต้น

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล

การคืนสินค้า

  • Promise<object>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getFont()

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

รับแบบอักษรสำหรับสคริปต์และชุดแบบอักษรทั่วไปที่ระบุ

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • genericFamily

      ชุดแบบอักษรทั่วไปที่ควรดึงแบบอักษรมา

    • แบบตัวเขียน

      ScriptCode ไม่บังคับ

      สคริปต์ที่ควรดึงแบบอักษร หากละเว้น ระบบจะดึงการตั้งค่าแบบอักษรสำหรับสคริปต์ส่วนกลาง (รหัสสคริปต์ "Zyyy")

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • fontId

        สตริง

        รหัสแบบอักษร ค่านี้อาจเป็นรหัสของแบบอักษรที่ระบบแปลงค่ากำหนดเป็นรหัสนี้แทนที่จะเป็นค่ากำหนดรหัสแบบอักษรตามตัวอักษร ดังนั้น fontId อาจแตกต่างจากแบบอักษรที่ส่งไปยัง setFont หากแบบอักษรไม่พร้อมใช้งานในระบบ เป็นต้น สตริงว่างเปล่าหมายถึงการย้อนกลับไปใช้การตั้งค่าแบบอักษรของสคริปต์ส่วนกลาง

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

การคืนสินค้า

  • Promise<object>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getFontList()

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

รับรายการแบบอักษรในระบบ

พารามิเตอร์

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (results: FontName[]) =& gt;void

การคืนสินค้า

  • Promise<FontName[]>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getMinimumFontSize()

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

รับขนาดแบบอักษรขั้นต่ำ

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์ ไม่บังคับ

    ปัจจุบันพารามิเตอร์นี้ไม่ได้ใช้งาน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล

การคืนสินค้า

  • Promise<object>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setDefaultFixedFontSize()

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

กำหนดขนาดเริ่มต้นสำหรับแบบอักษรที่มีความกว้างคงที่

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • pixelSize

      ตัวเลข

      ขนาดแบบอักษรในหน่วยพิกเซล

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setDefaultFontSize()

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

กำหนดขนาดแบบอักษรเริ่มต้น

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • pixelSize

      ตัวเลข

      ขนาดแบบอักษรในหน่วยพิกเซล

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setFont()

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

กำหนดแบบอักษรสำหรับสคริปต์และชุดแบบอักษรทั่วไป

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • fontId

      สตริง

      รหัสแบบอักษร สตริงว่างหมายถึงการเปลี่ยนกลับไปใช้การตั้งค่าแบบอักษรของสคริปต์ส่วนกลาง

    • genericFamily

      ชุดแบบอักษรทั่วไปที่ควรตั้งค่าแบบอักษร

    • แบบตัวเขียน

      ScriptCode ไม่บังคับ

      รหัสสคริปต์ที่ควรตั้งค่าแบบอักษร หากไม่ระบุ ระบบจะตั้งค่าแบบอักษรสำหรับสคริปต์ส่วนกลาง (รหัสสคริปต์ "Zyyy")

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setMinimumFontSize()

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

กำหนดขนาดแบบอักษรขั้นต่ำ

พารามิเตอร์

  • รายละเอียด

    ออบเจ็กต์

    • pixelSize

      ตัวเลข

      ขนาดแบบอักษรในหน่วยพิกเซล

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    () =& gt;void

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

    ระบบรองรับเฉพาะ Promise สำหรับ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

กิจกรรม

onDefaultFixedFontSizeChanged

chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
  callback: function,
)

ทริกเกอร์เมื่อการตั้งค่าขนาดแบบอักษรคงที่เริ่มต้นมีการเปลี่ยนแปลง

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล

onDefaultFontSizeChanged

chrome.fontSettings.onDefaultFontSizeChanged.addListener(
  callback: function,
)

ทริกเกอร์เมื่อการตั้งค่าขนาดแบบอักษรเริ่มต้นเปลี่ยนแปลง

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล

onFontChanged

chrome.fontSettings.onFontChanged.addListener(
  callback: function,
)

เริ่มทำงานเมื่อมีการเปลี่ยนแปลงการตั้งค่าแบบอักษร

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • fontId

        สตริง

        รหัสแบบอักษร ดูคำอธิบายใน getFont

      • genericFamily

        ชุดแบบอักษรทั่วไปที่มีการเปลี่ยนแปลงการตั้งค่าแบบอักษร

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • แบบตัวเขียน

        ScriptCode ไม่บังคับ

        โค้ดสคริปต์ที่มีการเปลี่ยนแปลงการตั้งค่าแบบอักษร

onMinimumFontSizeChanged

chrome.fontSettings.onMinimumFontSizeChanged.addListener(
  callback: function,
)

ทริกเกอร์เมื่อการตั้งค่าขนาดแบบอักษรขั้นต่ำมีการเปลี่ยนแปลง

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) =& gt;void

    • รายละเอียด

      ออบเจ็กต์

      • levelOfControl

        ระดับการควบคุมที่ส่วนขยายนี้มีต่อการตั้งค่า

      • pixelSize

        ตัวเลข

        ขนาดแบบอักษรในหน่วยพิกเซล