refresh date: 2026-09-25 robots: noindex
Mô tả
Sử dụng API chrome.fontSettings để quản lý chế độ cài đặt phông chữ của Chrome.
Quyền
fontSettingsTệp kê khai
Để sử dụng Font Settings API, bạn phải khai báo quyền "fontSettings" trong tệp kê khai tiện ích. Ví dụ:
{
"name": "My Font Settings Extension",
"description": "Customize your fonts",
"version": "0.2",
"permissions": [
"fontSettings"
],
...
}
Bộ phông chữ và chữ viết chung
Chrome cho phép một số chế độ cài đặt phông chữ phụ thuộc vào một số bộ phông chữ chung và chữ viết ngôn ngữ. Ví dụ: phông chữ dùng cho tiếng Trung giản thể không có chân có thể khác với phông chữ dùng cho tiếng Nhật có chân.
Các bộ phông chữ chung mà Chrome hỗ trợ dựa trên bộ phông chữ chung CSS và được liệt kê trong tài liệu tham khảo API bên dưới. Khi một trang web chỉ định một bộ phông chữ chung, Chrome sẽ chọn phông chữ dựa trên chế độ cài đặt tương ứng. Nếu bạn không chỉ định bộ phông chữ chung, Chrome sẽ sử dụng chế độ cài đặt cho bộ phông chữ chung "tiêu chuẩn".
Khi một trang web chỉ định một ngôn ngữ, Chrome sẽ chọn phông chữ dựa trên chế độ cài đặt cho chữ viết của ngôn ngữ tương ứng. Nếu bạn không chỉ định ngôn ngữ, Chrome sẽ sử dụng chế độ cài đặt cho tập lệnh mặc định hoặc tập lệnh chung.
Các hệ chữ viết được hỗ trợ được chỉ định bằng mã hệ chữ viết ISO 15924 và được liệt kê trong tài liệu tham khảo API bên dưới. Về mặt kỹ thuật, chế độ cài đặt của Chrome không hoàn toàn dựa trên tập lệnh mà còn phụ thuộc vào ngôn ngữ. Ví dụ: Chrome chọn phông chữ cho chữ Kirin (mã tập lệnh ISO 15924 "Cyrl") khi một trang web chỉ định tiếng Nga và sử dụng phông chữ này không chỉ cho chữ Kirin mà còn cho mọi nội dung mà phông chữ này bao gồm, chẳng hạn như chữ Latinh.
Ví dụ
Đoạn mã sau đây lấy phông chữ chuẩn cho tiếng Ả Rập.
chrome.fontSettings.getFont(
{ genericFamily: 'standard', script: 'Arab' },
function(details) { console.log(details.fontId); }
);
Đoạn mã tiếp theo đặt phông chữ sans-serif cho tiếng Nhật.
chrome.fontSettings.setFont(
{ genericFamily: 'sansserif', script: 'Jpan', fontId: 'MS PGothic' }
);
Để dùng thử API này, hãy cài đặt ví dụ về API fontSettings từ kho lưu trữ chrome-extension-samples.
Loại
FontName
Đại diện cho tên phông chữ.
Thuộc tính
-
Tên hiển thị
chuỗi
Tên hiển thị của phông chữ.
-
fontId
chuỗi
Mã phông chữ.
GenericFamily
Bộ phông chữ chung CSS.
Enum
"standard"
"sansserif"
"serif"
"fixed"
"cursive"
"fantasy"
"math"
LevelOfControl
Một trong các giá trị sau:
not\_controllable: không thể được kiểm soát bởi bất kỳ tiện ích nào
controlled\_by\_other\_extensions: được kiểm soát bởi các tiện ích có mức độ ưu tiên cao hơn
controllable\_by\_this\_extension: có thể được kiểm soát bởi tiện ích này
controlled\_by\_this\_extension: được kiểm soát bởi tiện ích này
Enum
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"
ScriptCode
Mã tập lệnh ISO 15924. Hệ chữ viết mặc định hoặc chung được biểu thị bằng mã hệ chữ viết "Zyyy".
Enum
"Afak"
"Arab"
"Aran"
"Armi"
"Armn"
"Avst"
"Bali"
"Bamu"
"Bass"
"Batk"
"Beng"
"Blis"
"Bopo"
"Brah"
"Brai"
"Bugi"
"Buhd"
"Cakm"
"Lon"
"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"
"Mặt Trăng"
"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"
"Thái Lan"
"Tibt"
"Tirh"
"Ugar"
"Vaii"
"Visp"
"Wara"
"Wole"
"Xpeo"
"Xsux"
"Yiii"
"Zmth"
"Zsym"
"Zyyy"
Phương thức
clearDefaultFixedFontSize()
chrome.fontSettings.clearDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<void>
Xoá cỡ chữ cố định mặc định do tiện ích này đặt (nếu có).
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
clearDefaultFontSize()
chrome.fontSettings.clearDefaultFontSize(
details?: object,
callback?: function,
): Promise<void>
Xoá cỡ chữ mặc định do tiện ích này đặt (nếu có).
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
clearFont()
chrome.fontSettings.clearFont(
details: object,
callback?: function,
): Promise<void>
Xoá phông chữ do tiện ích này đặt (nếu có).
Thông số
-
chi tiết
đối tượng
-
genericFamily
Bộ phông chữ chung mà bạn muốn xoá phông chữ.
-
tập lệnh
ScriptCode không bắt buộc
Tập lệnh cần xoá phông chữ. Nếu bạn bỏ qua, chế độ cài đặt phông chữ chung cho chữ viết sẽ bị xoá.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
clearMinimumFontSize()
chrome.fontSettings.clearMinimumFontSize(
details?: object,
callback?: function,
): Promise<void>
Xoá cỡ chữ tối thiểu do tiện ích này đặt (nếu có).
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getDefaultFixedFontSize()
chrome.fontSettings.getDefaultFixedFontSize(
details?: object,
callback?: function,
): Promise<object>
Lấy kích thước mặc định cho phông chữ có chiều rộng cố định.
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
Giá trị trả về
-
<object> hứa hẹn
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getDefaultFontSize()
chrome.fontSettings.getDefaultFontSize(
details?: object,
callback?: function,
): Promise<object>
Lấy cỡ chữ mặc định.
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
Giá trị trả về
-
<object> hứa hẹn
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getFont()
chrome.fontSettings.getFont(
details: object,
callback?: function,
): Promise<object>
Lấy phông chữ cho một tập lệnh và bộ phông chữ chung nhất định.
Thông số
-
chi tiết
đối tượng
-
genericFamily
Bộ phông chữ chung mà phông chữ sẽ được truy xuất.
-
tập lệnh
ScriptCode không bắt buộc
Tập lệnh cần truy xuất phông chữ. Nếu bạn bỏ qua, chế độ cài đặt phông chữ cho tập lệnh chung (mã tập lệnh "Zyyy") sẽ được truy xuất.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
fontId
chuỗi
Mã phông chữ. Thay vì giá trị ưu tiên về mã phông chữ cố định, đây có thể là mã nhận dạng của phông chữ mà hệ thống phân giải giá trị ưu tiên thành. Vì vậy,
fontIdcó thể khác với phông chữ được truyền đếnsetFont, chẳng hạn như nếu phông chữ không có sẵn trên hệ thống. Chuỗi trống biểu thị việc quay lại chế độ cài đặt phông chữ tập lệnh chung. -
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
-
Giá trị trả về
-
<object> hứa hẹn
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getFontList()
chrome.fontSettings.getFontList(
callback?: function,
): Promise<FontName[]>
Lấy danh sách phông chữ trên hệ thống.
Thông số
Giá trị trả về
-
Promise<FontName[]>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getMinimumFontSize()
chrome.fontSettings.getMinimumFontSize(
details?: object,
callback?: function,
): Promise<object>
Lấy cỡ chữ tối thiểu.
Thông số
-
chi tiết
object không bắt buộc
Tham số này hiện chưa được sử dụng.
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
Giá trị trả về
-
<object> hứa hẹn
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setDefaultFixedFontSize()
chrome.fontSettings.setDefaultFixedFontSize(
details: object,
callback?: function,
): Promise<void>
Đặt kích thước mặc định cho phông chữ có chiều rộng cố định.
Thông số
-
chi tiết
đối tượng
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setDefaultFontSize()
chrome.fontSettings.setDefaultFontSize(
details: object,
callback?: function,
): Promise<void>
Đặt cỡ chữ mặc định.
Thông số
-
chi tiết
đối tượng
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setFont()
chrome.fontSettings.setFont(
details: object,
callback?: function,
): Promise<void>
Đặt phông chữ cho một tập lệnh và bộ phông chữ chung nhất định.
Thông số
-
chi tiết
đối tượng
-
fontId
chuỗi
Mã phông chữ. Chuỗi trống có nghĩa là quay lại chế độ cài đặt phông chữ tập lệnh chung.
-
genericFamily
Bộ phông chữ chung mà bạn nên đặt cho phông chữ.
-
tập lệnh
ScriptCode không bắt buộc
Mã tập lệnh mà phông chữ sẽ được đặt. Nếu bạn bỏ qua, chế độ cài đặt phông chữ cho tập lệnh chung (mã tập lệnh "Zyyy") sẽ được đặt.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setMinimumFontSize()
chrome.fontSettings.setMinimumFontSize(
details: object,
callback?: function,
): Promise<void>
Đặt cỡ chữ tối thiểu.
Thông số
-
chi tiết
đối tượng
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
callback
hàm không bắt buộc
Tham số
callbackcó dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 96 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
Sự kiện
onDefaultFixedFontSizeChanged
chrome.fontSettings.onDefaultFixedFontSizeChanged.addListener(
callback: function,
)
Được kích hoạt khi chế độ cài đặt cỡ chữ cố định mặc định thay đổi.
Thông số
-
callback
hàm
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
onDefaultFontSizeChanged
chrome.fontSettings.onDefaultFontSizeChanged.addListener(
callback: function,
)
Được kích hoạt khi chế độ cài đặt cỡ chữ mặc định thay đổi.
Thông số
-
callback
hàm
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-
onFontChanged
chrome.fontSettings.onFontChanged.addListener(
callback: function,
)
Được kích hoạt khi chế độ cài đặt phông chữ thay đổi.
Thông số
-
callback
hàm
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
fontId
chuỗi
Mã phông chữ. Xem nội dung mô tả trong
getFont. -
genericFamily
Bộ phông chữ chung mà chế độ cài đặt phông chữ đã thay đổi.
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
tập lệnh
ScriptCode không bắt buộc
Mã tập lệnh có chế độ cài đặt phông chữ đã thay đổi.
-
-
onMinimumFontSizeChanged
chrome.fontSettings.onMinimumFontSizeChanged.addListener(
callback: function,
)
Được kích hoạt khi chế độ cài đặt cỡ chữ tối thiểu thay đổi.
Thông số
-
callback
hàm
Tham số
callbackcó dạng như sau:(details: object) => void
-
chi tiết
đối tượng
-
levelOfControl
Mức độ kiểm soát của tiện ích này đối với chế độ cài đặt.
-
pixelSize
số
Cỡ chữ tính bằng pixel.
-
-