PDF의 병합/분할 및 이미지파일로 전환을 하기 위한 도구들을 소개한다.
- Ghostscript - PostScript , PDF를 생성하거나 조작하는 도구.
- 용도
- merge / 이미지 변환
- 환경
- windows/ linux
- 예
- merge - source1.pdf 와 source2.pdf 를 병합하여 merged.pdf 를 생성한다.
gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=merged.pdf source1.pdf source2.pdf - 이미지 변환 - source.pdf 의 각 페이지를 img<페이지번호>.png로 생성한다. 이미지의 해상도는 300*300 으로 한다.
gs -dBATCH -dNOPAUSE -sDEVICE=png16m -sOutputFile=img%d.png -r300x300 source.pdf - 문제점
- merge 할 경우 bookmark가 엉망이 된다.
이미지 생성의 퀄리티가 낮다. 옵션을 어떻게 줘야 쓸만한 이미지를 만들 수 있을까?
- PDF Split and Merge - PDF를 분할하거나 페이지 별로 병합하기 위한 도구.
- 용도
- PDF를 페이지 별 분할하거나, 여러 문서에 산재된 페이지별로 병합할 때 사용
- 환경
- Java를 수행할 수 있는 환경
- 예
- merge - source1.pdf 의 1~3 페이지와 source2.pdf 의 5~7 페이지를 병합하여 merged.pdf를 생성한다.
java -jar pdfsam-console-0.5.2.jar -f source1.pdf -f source2.pdf -u 1-3:5-7: -o merged.pdf -overwrite concat - split - source.pdf 를 3페이지 단위로 분할하여 각각의 pdf 파일을 생성한다. 파일명은 split/<시작페이지>_split_source.pdf 로 한다.
java -jar pdfsam-console-0.5.2.jar -f source.pdf -n 3 -o split -p split_ -s SPLIT split - 문제점
- 실행 시 결함이 종종 보인다.
null/PDFsamTMPbuffer2.pdf (No such file or directory)이런 문구가 종종 나오는데, 실행 경로나 output 경로를 이리저리 바꿔보면 될 때도 있다.
merge 할 경우, bookmark가 엉망이 된다.
split 할 경우, output 디렉토리를 직접 생성해야 한다.
- Pdftk - the PDF Toolkit
위에 열거된 모든 기능이 가능한 것 같으나, 구동환경 문제로 인해 실제 사용해 보지 못했다.




덧글
은수 2006/12/21 02:10 # 삭제 답글
pdf->ps로 바꾸면 쓸 수 있는 툴이 여러가지 있을걸?다 한 다음에 다시 pdf로 바꾸고.
오리대마왕 2006/12/27 23:02 # 답글
옹. ps 라는 것에 대해서 잘 몰라서요. 그것도 봐야겠네요.그러나 결국 결론은 iText라는 훌륭한 library를 쓰면 다 된다는 사실!
(http://www.lowagie.com/iText/)