나는 이것을 전에 한 일을 알고 있으므로 가능하다는 것을 확신합니다. 그 방법을 잊어 버렸습니다. 변환하여 PDF의 특정 페이지를 가져 오도록 지시하는 방법이 있으며 해당 페이지의 형식을 PDF로 유지하고 싶습니다.
나는 이것을 전에 한 일을 알고 있으므로 가능하다는 것을 확신합니다. 그 방법을 잊어 버렸습니다. 변환하여 PDF의 특정 페이지를 가져 오도록 지시하는 방법이 있으며 해당 페이지의 형식을 PDF로 유지하고 싶습니다.
답변:
ImageMagick은 대부분의 PDF가 아닌 비트 맵 이미지를위한 도구입니다. 사용 하면 데이터 가 래스터 화 되므로 바람직하지 않습니다.
Pdftk 는 PDF 파일에서 하나 이상의 페이지를 추출 할 수 있습니다.
pdftk A=input.pdf cat A42 A43 output pages_42_43.pdf
당신이 PDFLaTeX와 라텍스가 설치되어있는 경우 사용할 수 있습니다 pdfpages을 . pdfpages위한 쉘 래퍼있다 pdfjam은 .
pdfjam -o pages_42_43.pdf input.pdf 42,43
또 다른 가능성 (여기서는 과잉이지만 한 페이지보다 복잡한 요구 사항에 유용합니다)은 PyPdf 라이브러리 가있는 Python입니다 .
#!/usr/bin/env python
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for i in [42, 43]:
output.addPage(input.getPage(i))
output.write(sys.stdout)
pdfjam
매력처럼 작동하며 이미 LaTeX 배포판과 함께 설치되었습니다. 사용하기 매우 쉽습니다.
pdftk
때문에 단순히 페이지를 추출하지 않는 것 같습니다. 그렇지 않으면 결과가 좋았습니다.
아래 첨자 표기법을 사용 convert(1)
하여 PDF로 "색인화" 할 수 있습니다 .
$ convert source.pdf[1] dest.pdf
색인 값은 PDF 내보내기 프로그램이 페이지 번호를 매기는 방법에 따라 다릅니다. 여기 파일 테스트에서 숫자는 0부터 시작하는 것으로 보이므로 위 예제는 문서 의 두 번째 페이지를 보여줍니다. PDF 작성자가 문서의 페이지 번호를 그 대신 "번호 매기기"한 것으로 보아 온라인에서 문자 색인을 보여주는 예제를 보았습니다.
불행히도 ImageMagick은 모든 것이 픽셀 기반이라고 가정하므로 일반적인 PDF의 타이포그래피와 같은 벡터 이미지를 래스터 화하기 때문에 결과가 그리 좋지 않습니다.
작업을위한 더 좋은 도구는 이미 설치 한 Ghostscript 입니다.
$ gs -dNOPAUSE -dBATCH -dFirstPage=2 -dLastPage=2 -sDEVICE=pdfwrite \
-sOutputFile=dest.pdf -f src.pdf
이것은 Ghostscript가 ImageMagick보다 훨씬 깊은 수준의 PDF (PostScript 파생물)를 이해하기 때문에 PDF 데이터를 변경하지 않고 전달합니다.
-density 300
은 달콤한 장소입니다. 더 큰 것 그리고 당신은 거대한 임시 파일을 만들고 있습니다-아마 당신은 어쨌든 썸네일로 크기를 조정할 것입니다
source.pdf[3-6]
pdftk
. 사용하고 싶을 것입니다.