N-Pages PDF에서 N JPEG 이미지 가져오기

N-Pages PDF에서 N JPEG 이미지 가져오기

N페이지로 구성된 PDF가 있습니다. 이 PDF를 N jpeg 이미지로 변환하고 싶습니다(Php, Java 또는 기타 프로그래밍 언어 없이 명령줄 사용).

GHOSTSCRIPT를 사용하여 이 작업을 수행하려고 하는데 GS가 나에게 제공하는 출력은 내가 찾고 있는 출력과 결코 같지 않습니다.

예:

gs \
  -sDEVICE=jpeg \
  -dNOCACHE \
  -dDEVICEHEIGHTPOINTS=72 -dDEVICEWIDTHPOINTS=72 \
  -r300 \
  -g800x600 \
  -dFIXEDMEDIA \
  -dPDFFitPage \
  -sOutputFile=output/%d.jpg \
   mypdf.pdf 

800x600 해상도로 N개의 JPEG 이미지를 생성하는데 PDF 페이지가 잘려서 맞지 않는 것 같습니다.

N-Pages PDF(명령줄에서)에서 N jpeg 이미지를 어떻게 얻을 수 있습니까?

답변1

사용된 명령줄 alesdario는 다음을 수행합니다.

  1. 800x600픽셀(픽셀)의 출력 크기를 사용하도록 Ghostscript에 지시하십시오.
  2. Ghostscript에 300dpi(인치당 도트 수)의 해상도를 사용하도록 지시하십시오.
  3. 72개 장치 포인트의 출력 크기를 사용하도록 Ghostscript에 지시하십시오.

세 가지 모두 동시에 일할 수는 없습니다. 두 가지가 함께 하면 세 번째와 모순되기 때문입니다.

300dpi에서 800x600 캔버스의 실제 크기는 2.33in x 2in(인치)가 됩니다. 이는 원래 PDF 페이지 크기(아마도)보다 훨씬 작습니다.

에게'간단히 N 페이지 PDF에서 N JPEG 이미지를 가져옵니다(명령줄에서)'다음 명령을 사용하십시오.

 gs \
   -sDEVICE=jpeg \
   -o output/%d.jpg \
    mypdf.pdf

이것은 가장 간단한 호출이며 아무것도 자르지 않고 다음에 대해 Ghostscript의 기본 설정을 사용합니다.

  • 이미지 해상도: JPEG 출력의 경우 72dpi입니다.
  • 출력 이미지의 크기: 이는 해당 PDF 페이지 크기를 따릅니다(그러나 Ghostscript는 PDF가 720dpi를 사용한다고 가정합니다).

N페이지 PDF에서 N개의 JPEG 이미지를 얻으려면사전 정의된 해상도와 사전 정의된 이미지 크기로, 일부 계산을 직접 수행하고 이에 따라 -r-g값을 설정해야 합니다. 예를 들어 JPEG에 200dpi를 원할 수 있습니다(ISO A4 [595x842pt]인 PDF 페이지 크기에서).-r200 -g1652x2338 자르기를 방지하려면 명령줄에 추가해야 함을 의미합니다.... 이렇게 하면 Ghostscript가다시 샘플링하다거기에 포함된 모든 페이지와 개체가 새로운 해상도로 변경됩니다.

답변2

노력하다이미지매직. 당신이 원하는 명령은 다음과 같습니다.

$ convert -density 400 my.pdf my.jpeg

관련 정보