chrome.fontSettings

설명

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 일반 글꼴 모음을 기반으로 하며 GenericReference에 나열되어 있습니다. 웹페이지에서 일반 글꼴 모음을 지정하면 Chrome은 해당 설정에 따라 글꼴을 선택합니다. 일반 글꼴 모음을 지정하지 않으면 Chrome은 '표준' 일반 글꼴 모음 설정을 사용합니다.

웹페이지에서 언어를 지정하면 Chrome은 해당 언어 스크립트의 설정에 따라 글꼴을 선택합니다. 언어를 지정하지 않으면 Chrome은 기본 또는 전역 스크립트 설정을 사용합니다.

지원되는 언어 스크립트는 ISO 15924 스크립트 코드로 지정되며 ScriptCode에 나열되어 있습니다. 기술적으로 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를 사용해 보려면 chrome-extension-samples 저장소의 fontSettings API 예시를 설치하세요.

유형

FontName

글꼴 이름을 나타냅니다.

속성

  • displayName

    string

    글꼴의 표시 이름입니다.

  • fontId

    string

    글꼴 ID입니다.

GenericFamily

CSS 일반 글꼴 모음입니다.

열거형

"sansserif"

"serif"

"cursive"

LevelOfControl

not\_controllable 중 하나: 확장 프로그램에서 제어할 수 없음 controlled\_by\_other\_extensions: 우선순위가 더 높은 확장 프로그램에서 제어 controllable\_by\_this\_extension: 이 확장 프로그램으로 제어할 수 있음 controlled\_by\_this\_extension: 이 확장 프로그램에 의해 제어됨

열거형

"not_controllable"

"controllable_by_this_extension"

ScriptCode

ISO 15924 스크립트 코드입니다. 기본 또는 전역 스크립트는 스크립트 코드 'Zyyy'로 표시됩니다.

열거형

"Cyrs"

"Geok"

"Hang"

"Jurc"

"Khmr"

"Kpel"

"Lyci"

"Mand"

"Mend"

"Orkh"

"Perm"

"Runr"

"Syre"

"Wara"

"Wole"

방법

clearDefaultFixedFontSize()

프로미스
chrome.fontSettings.clearDefaultFixedFontSize(
  details?: object,
  callback?: function,
)

이 확장 프로그램에서 설정한 기본 고정 글꼴 크기가 있으면 삭제합니다.

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

clearDefaultFontSize()

프로미스
chrome.fontSettings.clearDefaultFontSize(
  details?: object,
  callback?: function,
)

이 확장 프로그램에서 설정한 기본 글꼴 크기를 삭제합니다(있는 경우).

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

clearFont()

프로미스
chrome.fontSettings.clearFont(
  details: object,
  callback?: function,
)

이 확장 프로그램에서 설정한 글꼴을 삭제합니다(있는 경우).

매개변수

  • 세부정보

    객체

    • genericFamily

      글꼴을 지워야 하는 일반 글꼴 모음

    • 스크립트

      ScriptCode 선택사항

      글꼴을 삭제해야 하는 스크립트입니다. 생략하면 전역 스크립트 글꼴 설정이 지워집니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

clearMinimumFontSize()

프로미스
chrome.fontSettings.clearMinimumFontSize(
  details?: object,
  callback?: function,
)

이 확장 프로그램에서 설정한 최소 글꼴 크기를 지웁니다(있는 경우).

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getDefaultFixedFontSize()

프로미스
chrome.fontSettings.getDefaultFixedFontSize(
  details?: object,
  callback?: function,
)

고정폭 글꼴의 기본 크기를 가져옵니다.

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.

반환 값

  • Promise<object>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getDefaultFontSize()

프로미스
chrome.fontSettings.getDefaultFontSize(
  details?: object,
  callback?: function,
)

기본 글꼴 크기를 가져옵니다.

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.

반환 값

  • Promise<object>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getFont()

프로미스
chrome.fontSettings.getFont(
  details: object,
  callback?: function,
)

지정된 스크립트 및 일반 글꼴 모음의 글꼴을 가져옵니다.

매개변수

  • 세부정보

    객체

    • genericFamily

      글꼴을 검색해야 하는 일반 글꼴 모음입니다.

    • 스크립트

      ScriptCode 선택사항

      글꼴을 검색해야 하는 스크립트입니다. 생략하면 전역 스크립트 (스크립트 코드 'Zyyy')의 글꼴 설정이 검색됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • fontId

        string

        글꼴 ID입니다. 이 속성은 리터럴 글꼴 ID 환경설정 값이 아니라 시스템이 환경설정 값을 확인하는 글꼴의 ID일 수 있습니다. 따라서 예를 들어 시스템에서 글꼴을 사용할 수 없는 경우 fontIdsetFont에 전달된 글꼴과 다를 수 있습니다. 빈 문자열은 전역 스크립트 글꼴 설정으로의 대체를 나타냅니다.

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

반환 값

  • Promise<object>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getFontList()

프로미스
chrome.fontSettings.getFontList(
  callback?: function,
)

시스템의 글꼴 목록을 가져옵니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (results: FontName[])=>void

반환 값

  • Promise<FontName[]>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getMinimumFontSize()

프로미스
chrome.fontSettings.getMinimumFontSize(
  details?: object,
  callback?: function,
)

최소 글꼴 크기를 가져옵니다.

매개변수

  • 세부정보

    객체 선택사항

    이 매개변수는 현재 사용되지 않습니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.

반환 값

  • Promise<object>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setDefaultFixedFontSize()

프로미스
chrome.fontSettings.setDefaultFixedFontSize(
  details: object,
  callback?: function,
)

고정폭 글꼴의 기본 크기를 설정합니다.

매개변수

  • 세부정보

    객체

    • pixelSize

      숫자

      글꼴 크기(픽셀)입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setDefaultFontSize()

프로미스
chrome.fontSettings.setDefaultFontSize(
  details: object,
  callback?: function,
)

기본 글꼴 크기를 설정합니다.

매개변수

  • 세부정보

    객체

    • pixelSize

      숫자

      글꼴 크기(픽셀)입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setFont()

프로미스
chrome.fontSettings.setFont(
  details: object,
  callback?: function,
)

지정된 스크립트 및 일반 글꼴 모음의 글꼴을 설정합니다.

매개변수

  • 세부정보

    객체

    • fontId

      string

      글꼴 ID입니다. 빈 문자열은 전역 스크립트 글꼴 설정으로 대체합니다.

    • genericFamily

      글꼴을 설정해야 하는 일반 글꼴 모음입니다.

    • 스크립트

      ScriptCode 선택사항

      글꼴을 설정해야 하는 스크립트 코드입니다. 생략하면 전역 스크립트 (스크립트 코드 'Zyyy')의 글꼴 설정이 설정됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setMinimumFontSize()

프로미스
chrome.fontSettings.setMinimumFontSize(
  details: object,
  callback?: function,
)

최소 글꼴 크기를 설정합니다.

매개변수

  • 세부정보

    객체

    • pixelSize

      숫자

      글꼴 크기(픽셀)입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

이벤트

onDefaultFixedFontSizeChanged

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

기본 고정 글꼴 크기 설정이 변경되면 시작됩니다.

매개변수

  • 콜백

    기능

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.

onDefaultFontSizeChanged

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

기본 글꼴 크기 설정이 변경되면 시작됩니다.

매개변수

  • 콜백

    기능

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.

onFontChanged

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

글꼴 설정이 변경되면 시작됩니다.

매개변수

  • 콜백

    기능

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • fontId

        string

        글꼴 ID입니다. getFont의 설명을 참고하세요.

      • genericFamily

        글꼴 설정이 변경된 일반 글꼴 모음입니다.

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • 스크립트

        ScriptCode 선택사항

        글꼴 설정이 변경된 스크립트 코드입니다.

onMinimumFontSizeChanged

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

최소 글꼴 크기 설정이 변경되면 시작됩니다.

매개변수

  • 콜백

    기능

    callback 매개변수는 다음과 같습니다.

    (details: object)=>void

    • 세부정보

      객체

      • levelOfControl

        이 확장 프로그램이 설정에 대한 제어 수준입니다.

      • pixelSize

        숫자

        글꼴 크기(픽셀)입니다.