참고 : TCPDF 한글 폰트 추가
■ TCPDF 폰트 추가도구 확인
※ 가장먼저 /usr/share/php/tcpdf/tools/ 폴더로 이동해서 tcpdf_addfont.php 파일의 존재 여부를 확인한다.
[root@admin ~]# cd /usr/share/php/tcpdf/tools/ [root@admin tools]# ll total 12 -rw-rw-r-- 1 root root 2003 May 13 2014 convert_fonts_examples.txt -rwxr-xr-x 1 root root 7449 Aug 6 2013 tcpdf_addfont.php |
■ TCPDF에 맑은 고딕 추가하기
01. 리눅스 맑은고딕 설치
[root@admin ~]# wget https://raw.githubusercontent.com/wangsy/mintoffice/master/public/fonts/MalgunGothic.ttf -O /usr/share/fonts/MalgunGothic.ttf |
02. TCPDF에 맑은고딕 추가하기
[root@admin ~]# cd /usr/share/php/tcpdf/tools/ |
[root@admin tools]# ll /usr/share/fonts/MalgunGothic.ttf -rw-r--r-- 1 root root 3997212 Sep 7 09:22 /usr/share/fonts/MalgunGothic.ttf |
[root@admin tools]# tcpdf_addfont.php -i /usr/share/fonts/MalgunGothic.ttf
>>> Converting fonts for TCPDF: *** Output dir set to /usr/share/php/tcpdf/fonts/ +++ OK : /usr/share/fonts/MalgunGothic.ttf added as malgungothic >>> Process successfully completed! |
[root@admin tools]# ll /usr/share/php/tcpdf/fonts/ | grep malgun -rw-r--r-- 1 root root 23383 Sep 9 13:21 malgungothic.ctg.z -rw-r--r-- 1 root root 150183 Sep 9 13:21 malgungothic.php -rw-r--r-- 1 root root 1559511 Sep 9 13:21 malgungothic.z |
03. 이제 /usr/share/php/tcpdf/fonts 경로에 접근해 보면 아래와 같이 맑은고딕 폰트가 설치된 것을 확인 할 수 있다.
■ TCPDF에 나눔폰트 추가하기
01. 리눅스 나눔폰트 다운로드
[root@admin ~]# cd /usr/share/fonts/ [root@admin fonts]# wget http://cdn.naver.com/naver/NanumFont/fontfiles/NanumFont_TTF_ALL.zip ... (생략) Length: 14946146 (14M) [application/zip] Saving to: “NanumFont_TTF_ALL.zip” 100%[=================================================>] 14,946,146 22.5M/s in 0.6s 2015-09-04 16:33:37 (22.5 MB/s) - “NanumFont_TTF_ALL.zip” saved [14946146/14946146] |
02. 리눅스 나눔폰트 압축해제
[root@admin fonts]# unzip NanumFont_TTF_ALL.zip -d NanumFont Archive: NanumFont_TTF_ALL.zip inflating: NanumFont/NanumBrush.ttf inflating: NanumFont/NanumGothic.ttf inflating: NanumFont/NanumGothicBold.ttf inflating: NanumFont/NanumGothicExtraBold.ttf inflating: NanumFont/NanumMyeongjo.ttf inflating: NanumFont/NanumMyeongjoBold.ttf inflating: NanumFont/NanumMyeongjoExtraBold.ttf inflating: NanumFont/NanumPen.ttf |
[root@admin fonts]# rm -f NanumFont_TTF_ALL.zip |
03. TCPDF에 나눔폰트 추가하기
[root@admin ~]# cd /usr/share/php/tcpdf/tools/ |
[root@admin tools]# ls /usr/share/fonts/NanumFont/* /usr/share/fonts/NanumFont/NanumBrush.ttf /usr/share/fonts/NanumFont/NanumGothicBold.ttf /usr/share/fonts/NanumFont/NanumGothicExtraBold.ttf /usr/share/fonts/NanumFont/NanumGothic.ttf /usr/share/fonts/NanumFont/NanumMyeongjoBold.ttf /usr/share/fonts/NanumFont/NanumMyeongjoExtraBold.ttf /usr/share/fonts/NanumFont/NanumMyeongjo.ttf /usr/share/fonts/NanumFont/NanumPen.ttf |
[root@admin tools]# ls /usr/share/fonts/NanumFont/* | xargs -I TTF php tcpdf_addfont.php -i TTF >>> Converting fonts for TCPDF: *** Output dir set to /usr/share/php/tcpdf/fonts/ +++ OK : /usr/share/fonts/NanumFont/NanumBrush.ttf added as nanumbrush >>> Process successfully completed! ... (생략) >>> Converting fonts for TCPDF: *** Output dir set to /usr/share/php/tcpdf/fonts/ +++ OK : /usr/share/fonts/NanumFont/NanumPen.ttf added as nanumpen >>> Process successfully completed! |
[root@admin tools]# ll /usr/share/php/tcpdf/fonts/ | grep nanum -rw-r--r-- 1 root root 38143 Sep 9 13:21 nanumbrush.ctg.z -rw-r--r-- 1 root root 192465 Sep 9 13:21 nanumbrush.php -rw-r--r-- 1 root root 1517240 Sep 9 13:21 nanumbrush.z -rw-r--r-- 1 root root 38351 Sep 9 13:22 nanumgothicb.ctg.z -rw-r--r-- 1 root root 193541 Sep 9 13:22 nanumgothicb.php -rw-r--r-- 1 root root 2441869 Sep 9 13:21 nanumgothicb.z -rw-r--r-- 1 root root 38351 Sep 9 13:22 nanumgothic.ctg.z -rw-r--r-- 1 root root 38351 Sep 9 13:22 nanumgothicextrab.ctg.z -rw-r--r-- 1 root root 193557 Sep 9 13:22 nanumgothicextrab.php -rw-r--r-- 1 root root 2300377 Sep 9 13:22 nanumgothicextrab.z -rw-r--r-- 1 root root 193532 Sep 9 13:22 nanumgothic.php -rw-r--r-- 1 root root 2387929 Sep 9 13:22 nanumgothic.z -rw-r--r-- 1 root root 23103 Sep 9 13:22 nanummyeongjob.ctg.z -rw-r--r-- 1 root root 136475 Sep 9 13:22 nanummyeongjob.php -rw-r--r-- 1 root root 1567017 Sep 9 13:22 nanummyeongjob.z -rw-r--r-- 1 root root 23103 Sep 9 13:22 nanummyeongjo.ctg.z -rw-r--r-- 1 root root 23088 Sep 9 13:22 nanummyeongjoextrab.ctg.z -rw-r--r-- 1 root root 136489 Sep 9 13:22 nanummyeongjoextrab.php -rw-r--r-- 1 root root 1921071 Sep 9 13:22 nanummyeongjoextrab.z -rw-r--r-- 1 root root 136468 Sep 9 13:22 nanummyeongjo.php -rw-r--r-- 1 root root 1353175 Sep 9 13:22 nanummyeongjo.z -rw-r--r-- 1 root root 38143 Sep 9 13:22 nanumpen.ctg.z -rw-r--r-- 1 root root 192460 Sep 9 13:22 nanumpen.php -rw-r--r-- 1 root root 1456590 Sep 9 13:22 nanumpen.z |
04. 이제 /usr/share/php/tcpdf/fonts 폴더에 접근해보면 나눔폰트가 설치된 것을 확인 할 수 있다.
■ TCPDF로 한글 폰트 사용하기
※ 한글을 사용할때부터 파일의 인코딩을 ANSI로 하였을시 에러가 발생하여 UTF-8로 작업해야 했다.
01. TCPDF로 한글을 출력하기위한 코드는 아래와 같다.
tcpdf_test_02.php |
<?php require_once "tcpdf/tcpdf_import.php"; $html = "<h1>안녕 TCPDF</h1>"; $html .= "<p style='color:#CC0000;'>TCPDF 라이브러리 한글 예제</p>"; $html .= "<pre>1행 : TCPDF 한글 라이브러리</pre>"; $html .= "<pre>2행 : 세팅성공</pre>"; $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, "UTF-8", false); $pdf -> SetCreator(PDF_CREATOR); $pdf -> SetFont("nanumgothic"); $pdf -> SetDefaultMonospacedFont("nanumpen"); $pdf -> AddPage(); $pdf -> writeHTMLCell(0, 0, "", "", $html, 0, 1, 0, true, "", true); $pdf -> Output(getcwd()."/example_test_02.pdf", "F"); ?> |
02. tcpdf_test_02.php 파일을 웹브라우저로 실행하고나면 아래와 같이 example_test_02.pdf 파일이 생성된 것을 확인 할 수 있다.
03. 파일을 출력하면 한글이 깨지지 않고 출력되는 모습을 확인 할 수 있다.
'PHP > TCPDF' 카테고리의 다른 글
[PHP] TCPDF로 생성한 PDF 파일 바로 다운받기 (0) | 2017.09.19 |
---|---|
[PHP] TCPDF에서 TABLE 출력하기 (0) | 2017.09.19 |
[PHP] TCPDF 상단 헤더 변경하기 (0) | 2017.09.19 |
[PHP] TCPDF 라이브러리 설치하기 (0) | 2017.09.18 |