dw2pdf는 도쿠위키 플러그인 중 위키문서를 PDF로 출력하게 도와주는 플러그인이다.
해당 플러그인을 설치해보고 사용해보면,
한글 출력이 안되거나 출력은 되지만 글꼴이 엉망인 경우가 있다.
현재 인터넷에 퍼져있는 정보가 대부분 예전 버전용이라 해결이 되지 않은 경우가 많은데,
2016년 4월 17에 릴리즈 된 버전을 기준으로 설명하도록 하겠다.
- [doku_root]\lib\plugins\dw2pdf\DokuPDF.class
해당 파일을 열어보면 switch($conf['lang']) { 으로 시작하는 구문이 존재한다. ( line #33 )
해당 switch 문의 case 'ko': 를 살펴보면 $mode='+aCJK'; 라고 되어 있는데,
이를 $mode='-aCJK'; 로 변경해준다.
switch($conf['lang']) {
case 'zh':
case 'zh-tw':
case 'ja':
case 'ko':
//$mode = '+aCJK';
$mode = '-aCJK';
break;
default:
$mode = 'UTF-8-s';
}
- [doku_root]\lib\plugins\dw2pdf\mpdf\config_fonts.php
해당 파일을 열어보면 $this->fontdata = array( 으로 시작하는 구문이 존재한다. ( line #85 )
아래와 같은 형식으로 array에 원소(element)를 추가해준다.
R은 regular로 일반 글자를 출력할 때 사용하는 글꼴이고 B는 bold, 굵게 표시된 글자를 출력할 때 사용하는 글꼴이다.
I는 italic, 기울어진 글자를 출력할 때 사용하며 BI는 bold+italic으로 굵게+기울어진 글자를 출력할 때 사용하는 글꼴이다.
그리고 사용하고자 하는 글꼴파일은 [doku_root]\lib\plugins\dw2pdf\mpdf\ttfonts에 포함되어 있어야 한다.
예시에 적힌 malgun.ttf는 윈도우에 포함된 폰트인 맑은 고딕의 파일명이다.
"글꼴셋 이름" => array(
'R' => "글꼴파일명",
(옵션) 'B' => "글꼴파일명",
(옵션) 'I' => "글꼴파일명",
(옵션) 'BI' => "글꼴파일명",
),
(예제)
"malgun-gothic" => array(
'R' => "malgun.ttf",
'B' => "malgunbd.ttf",
'I' => "malgun.ttf",
'BI' => "malgunbd.ttf",
),
- [doku_root]\lib\plugins\dw2pdf\config_lang2fonts.php
파일을 열어보면 switch($lang){ 으로 시작하는 구문이 존재한다. ( line#32 )
해당 switch 문 내부에 CASE "ko": CASE "kor": // HANGUL Korean 으로 시작하는 case가 있다. ( line #353 )
해당 case block을 아래와 같이 변경한다.
CASE "ko": CASE "kor": // HANGUL Korean
if ($adobeCJK) { $unifont = "uhc"; }
else { $unifont = "글꼴셋 이름"; }
break;
CASE "ja": CASE "jpn": // Japanese HIRAGANA KATAKANA
(예제)
CASE "ko": CASE "kor": // HANGUL Korean
if ($adobeCJK) { $unifont = "uhc"; }
else { $unifont = "malgun-gothic"; }
break;
CASE "ja": CASE "jpn": // Japanese HIRAGANA KATAKANA
- [doku_root]\lib\plugins\dw2pdf\conf\style.local.css
해당 css 파일의 body 부분을 아래와 같이 변경한다.
만일 파일이 없다면 style.css를 복사하여 style.local.css를 생성한 후 body 부분을 변경한다.
body {
font-family: '글꼴셋 이름';
}
(예제)
body {
font-family: 'malgun-gothic';
}
덧붙여, 다른 팁을 보고 [doku_root]\lib\plugins\dw2pdf\mpdf\config.php 에서
$this->useAdobeCJK = false; ( line #44 ) 를 true로 수정하였다면 false로 변경하도록 한다.
'컴퓨터공학 리서치 > 공개' 카테고리의 다른 글
CMakeLists.txt를 사용하여 OpenCV 링크하기 (2) | 2015.10.05 |
---|---|
우분투(ubuntu) 환경변수 설정방법 (0) | 2015.09.05 |
우분투(ubuntu)에서 JDK 설치 (0) | 2015.09.03 |
우분투(ubuntu) 바탕화면에 바로가기 만들기 (0) | 2015.09.02 |
안드로이드 adb 및 fastboot 명령 정리 (0) | 2015.03.16 |