[python] ReportLab 폰트 설정
ReportLab은 파이썬에서 PDF 문서를 생성하기 위한 라이브러리입니다. 이 라이브러리를 사용하면 텍스트 콘텐츠를 PDF 문서로 변환할 수 있습니다. ReportLab을 사용하여 한글 폰트를 설정하는 방법에 대해 알아보겠습니다.
폰트 설치
ReportLab의 폰트 설정을 위해서는 먼저 원하는 한글 폰트를 설치해야 합니다. 여기서는 나눔고딕 폰트를 예시로 설치하는 방법을 설명하겠습니다.
- 나눔고딕 폰트를 다운로드합니다.
- 네이버 나눔글꼴 등에서 다운로드 가능합니다.
- 다운로드한 파일은
.ttf
형식일 것입니다.
- 다운로드한 폰트 파일을 ReportLab 폰트 디렉터리에 저장합니다.
- 일반적으로
~/Library/Fonts/
디렉터리이지만, 사용하는 운영체제에 따라 다를 수 있습니다.
- 일반적으로
폰트 설정 방법
폰트를 설정하기 위해 reportlab
라이브러리의 pdfmetrics
와 ttfonts
모듈을 사용합니다. 아래의 코드를 참고하여 폰트를 설정하는 방법을 확인해보세요.
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
# 폰트 경로 설정
font_path = '/Users/{사용자 이름}/Library/Fonts/NanumGothic.ttf'
# 폰트 등록
pdfmetrics.registerFont(TTFont('NanumGothic', font_path))
폰트 경로를 적절히 설정한 후, pdfmetrics.registerFont()
메서드를 사용하여 폰트를 등록합니다.
폰트 적용
폰트를 등록한 후에는 생성한 PDF 문서에 폰트를 적용할 수 있습니다. 아래의 코드를 참고하여 폰트를 적용하는 방법을 확인해보세요.
from reportlab.pdfgen import canvas
# PDF 문서 생성
pdf_path = 'output.pdf'
c = canvas.Canvas(pdf_path)
# 폰트 설정
c.setFont('NanumGothic', 12) # 폰트 이름과 크기를 지정
# 텍스트 추가
c.drawString(100, 100, '안녕하세요, ReportLab입니다.')
# PDF 저장
c.save()
setFont()
메서드를 사용하여 폰트의 이름과 크기를 설정한 후, drawString()
메서드를 사용하여 텍스트를 추가합니다.
이제 폰트가 지정된 텍스트가 포함된 PDF 문서를 생성할 수 있습니다.
결론
이제 ReportLab을 사용하여 한글 폰트를 설정하는 방법을 알게 되었습니다. 원하는 한글 폰트를 설치하고, 폰트를 등록한 후에는 텍스트에 해당 폰트를 적용하여 원하는 모양의 PDF 문서를 만들 수 있습니다. ReportLab을 사용하는 과정에서 발생하는 문제가 있다면 공식 문서를 참고하는 것을 추천합니다.