docbook(xml, 한글) 로 pdf 를 만드는데 필요한 것이 무엇이 있을까요?

닥북 활용에 대한 모든 질문과 답변

docbook(xml, 한글) 로 pdf 를 만드는데 필요한 것이 무엇이 있을까요?

전체글글쓴이: Mr.Dust » 2008-04-04 10:01 pm

제가 docbook 으로 프로그램 매뉴얼을 만드는 프로젝트에 참여하고 있습니다.( http://docs.gimp.org )

이곳에서는 docbook 형식의 xml 파일을 통해 문서를 작성하고, 이를 html 과 pdf 형식으로 변환하고 있습니다.
gimp docs svn : http://svn.gnome.org/svn/gimp-help-2/trunk/
html 예제 : http://docs.gimp.org/ko
pdf 예제 : http://docs.gimp.org/ko.pdf
gimp docs ko.xml : http://gimp.kr/pub/help/ko.xml

하지만 pdf 의 경우 cjk 를 제대로 지원하지 못해, 근래에 들어서야 꼼수로 odf 로 변환후 OOo 등에서 pdf 로 변환하는 방식을 사용하고 있습니다. 이에 따라 영문판 (http://docs.gimp.org/en.pdf) 과는 다소 다른 부분이 있고, 군데군데 내용이나 그림이 누락되는 문제가 발생됩니다.

그래서 직접 pdf 변환을 시도해보려는데 잘 안됩니다.
우선 xml 파일은 성공적으로 생성할 수 있습니다. html 으로의 변환도 성공적으로 하고 있습니다.
하지만 pdf 는 영 안되고, odf 는 되긴 하는데, 앞서 말씀드렸다시피 누락되는 부분이 생깁니다. 인덱스도 안 나오고.. 영문판은 이쁘게 나오는데 ;;;



pdf 변환 : 우분투 7.10 에서 했고, db2latex 를 사용하는 것 같았습니다. cjk.sty 와 cjkutf-8.sty 가 없다길래 관련 패키지를 전부 설치했는데, 다음과 같은 에러를 내며 되지 않습니다.

/bin/mkdir -p pdf
dblatex -p ./stylesheets/plainprint.xsl xml/ko.xml -o pdf/ko.pdf
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.2.5-1)
===================================================
Processing Revision History
No "ko" localization of "sect2" exists; using "en".
No "ko" localization of "sect2" exists; using "en".
No "ko" localization of "sect2" exists; using "en".
No "ko" localization of "sect2" exists; using "en".
No "ko" localization of "sect2" exists; using "en".
No "ko" localization of "sect2" exists; using "en".
Error: no ID for constraint linkend: bibliography-online-wkpd-lzw.
*** Error: xref to nonexistent id: bibliography-online-wkpd-lzw
Error: no ID for constraint linkend: bibliography-online-wkpd-packbits.
*** Error: xref to nonexistent id: bibliography-online-wkpd-packbits
No "ko" localization of "sect3" exists; using "en".
No "ko" localization of "sect1" exists; using "en".
No "ko" localization of "sect3" exists; using "en".
No "ko" localization of "sect1" exists; using "en".
No "ko" localization of "sect1" exists; using "en".
Processing Bibliography
Output Mode: all
Processing Bibliography - Bibliodiv
Processing Bibliography - Bibliodiv
Image '../images/using/ko/png-dialog.png' not found
Image '../images/toolbox/ko/toolbox-pencil.png' not found
Build ko.pdf
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
%&-line parsing enabled.
entering extended mode
pdflatex failed
ko_tmp.tex:71: Undefined control sequence \maketitle.
ko_tmp.tex:71: leading text: \maketitle
ko_tmp.tex:71: Argument of extract@rangefontinfo has an extra }.
ko_tmp.tex:71: leading text: \maketitle
ko_tmp.tex:71: Paragraph ended before extract@rangefontinfo was complete.
ko_tmp.tex:71: leading text: \maketitle
ko_tmp.tex:71: Undefined control sequence \maketitle.
ko_tmp.tex:71: leading text: \maketitle
ko_tmp.tex:71: Undefined control sequence \maketitle.
ko_tmp.tex:71: leading text: \maketitle
Error: pdflatex compilation failed
make[1]: *** [pdf/ko.pdf] 오류 1
make[1]: Leaving directory `/media/sdb1/Mr.Dust/Gimp/cygwin/home/Dust/gimp-help-2'
make: *** [pdf-recursive] 오류 1


그림이 없다거나 페이지가 없다라는 부분은 그러려니 하겠는데, html 로는 잘되니 문제가 아닌듯합니다.
gimp docs 의 구조를 봐주시면 정말 감사하겠고, 그것이 아니더라도 완성된 xml 파일은 있으니, 이것 외에 무엇이 더 필요하고 어떻게 해야할지 조언을 해주시면 감사하겠습니다.

지금보니 dblatex -p ./stylesheets/plainprint.xsl xml/ko.xml -o pdf/ko.pdf
여기가 포인트군요.
그러면 이 plainprint.xsl 과 ko.xml 을 가지고, 이곳에 있는 한국어 지원을 보면서 하면 될까요?
Mr.Dust
 

전체글글쓴이: 류광 » 2008-04-04 11:35 pm

안녕하세요~

닥북 XML => (La)TeX => PDF로 가는 거군요. 닥북 한국에서는 주로 Windows 환경에서 Apache FOP를 이용해서 PDF를 만드는 쪽에 주력해 왔기 때문에 그 경로에 대해서는 경험이 별로 없습니다. 이 기회에 많이 도와주시면 고맙겠습니다~ (이 게시판 회원으로 등록하시는 것부터.. ^^)

그 경로에서는 기본적으로 두 가지가 필요한데요.

1. (UTF-8로 작성된)한글 LaTeX 문서로부터 PDF를 생성하는 환경을 갖추는 것
2. 1에 적합한 형태의 한글 LaTeX 문서를 닥북 XML로부터 생성하는 것(db2latex 수정, 설정 등)

이 두 부분에 대해서는 한글 닥북 문서를 텍으로 조판하기를 참고하시면 좋을 것 같습니다.

잘 되면 여기 활동에 참여하셔서 이를테면 리눅스용 패키지 작성 같은 일을 도와주시면 어떨까요? 꼭 부탁드립니다!
류광
사용자
 
전체글: 428
가입일: 2003-12-27 12:02 am

답변 감사합니다.

전체글글쓴이: Mr.Dust » 2008-04-05 10:42 am

우선 말씀해주신 대로 UTF-8, 한글 문서를 PDF 로 만드는 과정과 현재 컴파일 과정에서 필요한 부분들을 추출해 한국어에 맞게 수정하는 작업이 필요하겠네요. 어떻게 보면 당연한 것입니다만, 뭔가 후련해집니다. 정말 답답했거든요.


여담으로 사실 docbook 이라든가 xml 같은 것에 대해 아는 바가 없습니다.
리눅스조차도 매뉴얼 번역 때문에 배우게 되었으니까요.
(번역 소스 컴파일한다고 6개월 넘게 번역 중단하고 리눅스 사용법에 대해 배운 ;;;)

이제는 어느 정도 안정이 되었고, 더 배울 것 없이(?) 번역에만 집중하면 되겠다.. 싶었는데 아니네요. 이제 슬슬 docbook 에 대해서 배워야겠네요. ㅎㅎ 김프 프로그램 컴파일과 저장소 제공을 하고 싶었는데.. 요게 뒤로 밀리는군요.

각설하고.. 생짜 초보지만 열심히 배워보겠습니다.
그리고 그것으로 도움을 드릴 수 있는 부분이 있다면 기꺼이..
Mr.Dust
사용자
 
전체글: 4
가입일: 2008-04-05 10:34 am

Re: 답변 감사합니다.

전체글글쓴이: Mr.Dust » 2008-04-05 5:34 pm

말씀해 주신 한글 닥북 문서를 텍으로 조판하기 를 따라하고 있는데 잘 안되네요.

우선 “db2latex의 xsl/qandaset.mod.xsl에서 question.answer.label이란 템플릿을 찾아서 지워주세요.” 에서 막힙니다. qandaset.mod.xsl 에는 question.answer.label 이란 템플릿이 존재하지 않고, 그래서 그 다음 과정으로 넘어가면, “compilation error: file http://db2latex.sourceforge.net/xsl/qandaset.mod.xsl line 366 element template xsl:template: error duplicate name ‘question.answer.label’” 이라는 에러가 뜹니다. 검색해보니 db2latex-xsl-0.8pre1-3 에서 고쳐질 거라더군요.

그래서 이번엔 데비안 db2latex-xsl-0.8pre1-5 를 받아 깔아보니 lists.mode.xsl 에서 에러가 납니다. object 가 defined 되지 않았다고 나오는군요. 흠.. 이 역시도 pre1-3 에서 수정된 것 같은데..

아..아.. 쉽지 않군요.
Mr.Dust
사용자
 
전체글: 4
가입일: 2008-04-05 10:34 am

Re: 답변 감사합니다.

전체글글쓴이: 류광 » 2008-04-05 9:49 pm

아 회원 등록하셨네요.. 환영합니다~

Mr.Dust 작성:말씀해 주신 한글 닥북 문서를 텍으로 조판하기 를 따라하고 있는데 잘 안되네요.

우선 “db2latex의 xsl/qandaset.mod.xsl에서 question.answer.label이란 템플릿을 찾아서 지워주세요.” 에서 막힙니다. qandaset.mod.xsl 에는 question.answer.label 이란 템플릿이 존재하지 않고, 그래서 그 다음 과정으로 넘어가면, “compilation error: file http://db2latex.sourceforge.net/xsl/qandaset.mod.xsl line 366 element template xsl:template: error duplicate name ‘question.answer.label’” 이라는 에러가 뜹니다. 검색해보니 db2latex-xsl-0.8pre1-3 에서 고쳐질 거라더군요.

오류 메시지로 봐서 XML 카탈로그 설정이 안 되어 있는 것 같습니다. 김민식님 글의 "XML 카탈로그가 제대로 되어 있어서 URL을 보고 설치된 파일을 찾아오는 경우라면 그냥 놔둬도 되지만..." 부분에 나와 있는 대로 일단 지역 파일 경로를 직접 사용해 보세요...
류광
사용자
 
전체글: 428
가입일: 2003-12-27 12:02 am

마찬가지로 에러...

전체글글쓴이: 안담울 » 2008-09-17 3:53 pm

db2latex 샘플 파일부터 에러가 나는데요..
local 화일이나 원격지 화일로 설정을 고쳐봐도 둘다 마찬가지로군요.
안담울
 

왜 굳이 tex 으로 변환을 하는지요?

전체글글쓴이: kukgini » 2009-02-09 3:47 pm

저도 약간의 관심이 있어 DocBook 과 LaTex 을 공부중인데... DocBook 으로 만든것을 FOP 같은걸로 PDF 변환이 가능할텐데 왜 굳이 LaTex 으로의 변환과정을 거치는지요? 딴지 거는게 아닙니다. 제가 모르는 뭔가가 있나해서요... ^^;
kukgini
 

Re: 왜 굳이 tex 으로 변환을 하는지요?

전체글글쓴이: 류광 » 2009-02-12 5:24 pm

kukgini 작성:저도 약간의 관심이 있어 DocBook 과 LaTex 을 공부중인데... DocBook 으로 만든것을 FOP 같은걸로 PDF 변환이 가능할텐데 왜 굳이 LaTex 으로의 변환과정을 거치는지요? 딴지 거는게 아닙니다. 제가 모르는 뭔가가 있나해서요... ^^;

결과물의 품질이나 작업 과정의 유연성 면에서 LaTeX 쪽에 장점이 있기 때문일 것입니다. 예를 들어 한글 PDF의 경우... FOP 0.9x 이전에는 PDF 문서에서 한글 텍스트의 추출 및 복사가 불가능했습니다.
류광
사용자
 
전체글: 428
가입일: 2003-12-27 12:02 am


다시 돌아감: 질문과 답변

접속 중인 사용자

이 포럼에 접속 중인 사용자: 접속한 회원이 없음 그리고 손님들 3 명

cron