Linux Command line 에서 PDF 파일을 이미지로 저장하기
설치
pdftoppm 은 PDF 를 Image 로 변환해 주는 명령행 유틸로 Free PDF toolkit 인 xPDF 의 구성 요소중 하나로 다양한 플랫폼을 지원합니다.
Windows 용은 https://xpdfreader-dl.s3.amazonaws.com/xpdf-tools-win-4.02.zip 에서 다운받으면 되며 Linux 는 https://www.xpdfreader.com/download.html 에서 바이너리를 받거나 아래처럼 패키지 매니저를 사용해서 설치하면 됩니다.
sudo apt install poppler-utils
RHEL/CentOS 는 epel 저장소를 설치한 후에 다음 명령을 실행합니다.
sudo yum install poppler-utils
사용
pdftoppm 은 pdf 파일과 저장할 디렉터리 경로를 옵션으로 주면 됩니다.
다음 명령은 report.pdf 를 읽어서 ~/images 폴더밑에 개별 페이지를 report-01.ppm 부터 report-xx.ppm 까지 저장하며 xx 는 총 페이지수입니다.
pdftoppm ~/report.pdf ~/images/report
즉 report.pdf 가 73 페이지일 경우 report-01.ppm 부터 report-73.ppm 까지 파일이 생겨납니다.
포맷 지정
출력 포맷을 변경할 경우 변환할 포맷을 지정하는 옵션을 사용하면 되며 사용할 수 있는 옵션은 다음과 같습니다.
- -jpeg
- -png
- -tiff
다음 명령은 report-01.jpg 부터 report-73.jpg 까지 개별 페이지를 저장합니다.
pdftoppm ~/report.pdf -jpeg ~/images/report
gray 로 저장
-gray 옵션을 지정하면 gray scale 형식으로 저장할 수 있습니다
pdftoppm ~/report.pdf -gray -jpeg ~/images/report
모노크롬으로 저장하려면 -mono 옵션을 사용하면 됩니다.
pdftoppm ~/report.pdf -mono -jpeg ~/images/report
페이지 지정
특정 페이지만 저장할 경우 시작 페이지를 지정하는 -f 옵션과 종료 페이지를 지정하는 -l 옵션을 사용하면 됩니다.
다음은 15 페이지부터 마지막까지 jpeg 로 저장하며 report-15.jpg 부터 report-73.jpg 까지 파일이 생성됩니다.
pdftoppm ~/report.pdf -jpeg ~/images/report -f 15
다음은 15 페이지부터 19페이지까지 jpeg 로 저장하며 report-15.jpg 부터 report-19.jpg 까지 파일이 생성됩니다.
pdftoppm ~/report.pdf -jpeg ~/images/report -f 15 -l 19
보통 PDF 의 첫 페이지는 표지인 경우가 많으므로 첫 페이지만 cover-01.jpg 로 저장할 경우 다음 명령을 사용합니다.
pdftoppm ~/report.pdf -jpeg ~/images/cover -f 1 -l 1