Python에서 Core Font Management 사용 방법

Python에서 Core Font Management 사용 방법

Aspose.Font FOSS for Python는 파일 경로, 바이트 배열 또는 스트림에서 글꼴을 로드하기 위한 주요 진입점으로 FontLoader를 제공합니다. 반환된 Font 객체는 이름, 패밀리, 스타일, 글리프 수, 인코딩 맵과 같은 메타데이터를 노출합니다.

단계별 가이드

1단계: 패키지 설치

git clone https://github.com/aspose-font-foss/Aspose.Font-FOSS-for-Python.git
cd Aspose.Font-FOSS-for-Python
pip install -e .

2단계: 필요한 클래스 가져오기

from aspose_font import FontLoader
from aspose_font import TtfFont

3단계: 파일 경로에서 글꼴 로드

폰 파일 경로를 사용하여 FontLoader.open()를 호출합니다. 이 메서드는 형식을 자동으로 감지하고 적절한 Font 하위 클래스(TtfFont, CffFont 등)를 반환합니다:

font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name)
print(font.num_glyphs)

Step 4: 글꼴 메트릭 접근

Font.metrics 속성은 ascender, descender, line gap, cap height 및 기타 타이포그래피 측정값을 포함하는 FontMetrics 객체를 반환합니다:

from aspose_font import FontLoader

font = FontLoader.open("Roboto-Regular.ttf")
metrics = font.metrics
print(metrics)

Step 5: 다른 형식으로 변환

로드된 폰트를 원하는 FontType 대상과 함께 FontConverter.convert()에 전달합니다. 이 메서드는 원본을 수정하지 않고 요청된 형식의 새로운 폰트 객체를 반환합니다:

from aspose_font import FontLoader
from aspose_font.converter import FontConverter  # internal API — may change between releases
from aspose_font import FontType

font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)

일반적인 문제 및 해결책

FontType 찾을 수 없습니다 — Import FontType 최상위에서 aspose_font 패키지: from aspose_font import FontType.

Font has no attribute font_name — 사용 중인지 확인하십시오 Font 다음에 의해 반환된 인스턴스 FontLoader.open(), raw 바이트 객체가 아닙니다.

Windows 경로에서 인코딩 오류 — 경로를 원시 문자열로 전달: r"C:\Fonts\MyFont.ttf".

자주 묻는 질문

FontLoader이(가) 지원하는 폰트 형식은 무엇입니까?

FontLoader.open()은 TTF, OTF, CFF, Type 1, WOFF, WOFF2 및 EOT를 지원합니다.

바이트에서 폰트를 로드할 수 있나요?

네. FontLoader.open()은 파일 경로 문자열, 바이트, 또는 source 인수를 통해 명시적인 font_type 매개변수와 함께 스트림 객체를 받아들입니다.

Font.to_bytes()를 사용할 수 있나요?

No. Font.to_bytes(font_type)는 기본 클래스에 구현되어 있지 않습니다. FontConverter.convert()를 사용하여 형식을 변경한 다음 서브클래스 저장 메서드를 사용하십시오.

참조

 한국어