Software Development Engineering/PHP
[PHP, PDF] TCPDF 한글 깨짐 해결 방법
devxpert.yoon
2021. 1. 29. 23:30
728x90
반응형
TCPDF 를 이용해 PDF 를 만들 때, 한글이 깨지는 현상이 생길 수 있다.
이 원인은 서버에 한글 폰트가 없기 때문에 발생하는 것으로,
서버에 한글 폰트를 추가하고, TCPDF 에 폰트를 링크를 걸어주면 해결할 수 있다.
1. TCPDF 폰트추가도구 확인
tcpdf_addfont.php 파일이 있어야 폰트를 추가할 수 있다
# cd /usr/share/php/tcpdf/tools/
# ll
2. (리눅스) 서버에 폰트 추가
- 나눔폰트 설치
폰트 설치
# cd /usr/share/fonts/
# wget http://cdn.naver.com/naver/NanumFont/fontfiles/NanumFont_TTF_ALL.zip
# unzip NanumFont_TTF_ALL.zip -d NanumFont
# rm -f NanumFont_TTF_ALL.zip
폰트 추가
# ls /usr/share/fonts/NanumFont/*
# ls /usr/share/fonts/NanumFont/* | xargs -I TTF php tcpdf_addfont.php -i TTF
# ll /usr/share/php/tcpdf/fonts/ | grep nanum
- TCPDF에서 nanumbrush, nanumgothicb, nanumgothic, nanumpen 이름으로 폰트 사용 가능
3. TCPDF 폰트 설정
사용방법 1
$pdf->SetFont('nanumgothic');
$pdf->SetDefaultMonospacedFont('nanumgothic_coding');
사용방법 2
AddFont ($family, $style='', $fontfile='', $subset='default')
SetFont ($family, $style='', $size=null, $fontfile='', $subset='default', $out=true)
SetDefaultMonospacedFont ($font)
setHeaderFont ($font)
setFooterFont ($font)
728x90
반응형