PDF 파일을 입력으로 사용하고 각 페이지의 스크린샷을 실제 크기(100%)로 찍는 스크립트를 만들고 싶습니다. 따라서 다음과 같습니다. custom_pdfcapture example.PDF
실행 후 스크린샷은 example.PDF
형식을 따르는 파일 이름과 함께 동일한 디렉터리 에 있어야 합니다 ${name_of_pdf}_${page_number}.pdf
. 이를 수행하려면 어떤 패키지/명령을 조사해야 합니까?
답변1
pdfseparate
이 패키지의 도구는 poppler-utils
입력 PDF 파일의 단일 페이지를 추출할 수 있습니다.
예:
pdfseparate example.pdf example_%02d.pdf
printf 스타일의 페이지 번호를 나타내는 example.pdf
페이지 example_01.pdf
, example_02.pdf
, ... 로 구분됩니다 .%02d
패키지의 도구와 도구를 pdftocairo
사용하여 입력 PDF 파일에서 이미지를 생성할 수 있습니다.pdftoppm
poppler-utils
예:
pdftocairo -r 300 -png example.pdf
pdftocairo -scale-to-x 800 -scale-to-y -1 -png example.pdf
두 명령 모두 지정된 문서의 모든 페이지를 example-01.png
, example-02.png
, ... 라는 이름의 PNG 이미지로 렌더링합니다.
첫 번째 명령은 x 및 y 해상도를 300PPI(기본값은 150PPI)로 설정하고, 두 번째 명령은 출력 너비를 고정 800픽셀( -scale-to-x 800
)로 설정하며, 출력 높이는 -scale-to-y -1
종횡비( )에 따라 결정됩니다.
JPEG(JPEG 압축 수준 변경 참조) 또는 TIFF 이미지를 사용하거나 생성 할 수 -jpeg
있습니다 .-tiff
-png
-jpegopt
문서의 MediaBox가 CropBox(Acrobat이 표시하고 인쇄하는 항목)보다 큰 경우 옵션을 추가합니다 -cropbox
.
pdfinfo
패키지에 포함된 상자 크기를 확인할 수 있습니다.
pdfinfo -box example.pdf
다양한 렌더링 백엔드를 사용하는 유틸리티에는 pdftoppm
출력 이미지(여기 example
)에 대한 접두사가 필요하며 출력은 다음과 유사합니다.
pdftoppm -r 300 -png example.pdf example
더 많은 옵션을 보려면 이 두 명령의 매뉴얼 페이지를 확인하십시오.