여러 PDF 파일을 하나로 결합(매트릭스로 배열)

여러 PDF 파일을 하나로 결합(매트릭스로 배열)

PDF 파일 세트가 있다고 가정해 보겠습니다. in-01.pdf, in-02.pdf, in-03.pdf, ... 모든 파일을 하나의 파일로 결합하여 매트릭스를 형성하고 싶습니다 M x N.

이 명령을 montage사용하면 그렇게 할 수 있습니다( 정수여야 MN).

montage -mode concatenate -tile NxM in-*.pdf out.pdf

문제는 결과 PDF의 크기가 엄청나다는 것인데, 모든 입력 PDF 크기의 합보다 약간 더 클 것으로 예상됩니다. 먼저 입력 PDF를 이미지로 변환한 다음 해당 이미지에서 출력 PDF를 생성하는 것 같습니다 montage. 예를 들어 원본 PDF의 텍스트는 출력 PDF에서 텍스트로 표시되지 않고 품질이 낮고 더 큰 이미지로 표시됩니다. 크기).

나는 그것을 할 수 있는 방법이 있어야 한다고 생각합니다. (예를 들어 LATEX에서는 PDF 이미지를 먼저 이미지로 변환할 필요 없이 다른 PDF에 삽입할 수 있습니다.)

저는 GNU/Linux 시스템에서 무료 소프트웨어 도구를 사용하는 명령줄 대안을 찾고 있습니다.

메모: 해당 PDF 파일의 정확한 치수(너비 및 높이)가 모두 동일하다고 가정할 수 있습니다. 이는 일반적으로 플롯/그래프(간단한 모양, 선 및 직사각형)와 몇 가지 텍스트(제목, 레이블...)로 구성된 자동 생성된 PDF 이미지입니다.

답변1

pdfnup다음 유틸리티 프로그램을 사용할 수 있습니다.pdfjam모음곡.

pdfnup in.pdf --nup 3x3

파일을 출력해야합니다인누프.pdf의 페이지와 함께in.pdf원본 PDF에서 3x3 행렬로 일련의 페이지로 배열됩니다.

모든 PDF 파일을 하나로 병합해야 하며 출력 파일의 용지 크기를 지정해야 합니다. 자세한 내용은 pdfjam 문서를 참조하세요.

답변2

여기서 에뮬레이션하려는 레이아웃은 다음과 같습니다.N-업. 이를 수행하는 몇 가지 방법이 있습니다. xae의 의견에서와 같이 pdfjam을 사용하면 이 작업을 수행할 수 있습니다. 거기 내 의견을 참조하십시오. 예를 들어:

pdfjam --suffix nup --nup 2x2 input.pdf

4-up, 2x2 행렬이 생성됩니다. 또는 --landscape세로 방향이 아닌 가로 방향에서 보는 것처럼 행렬 방향을 지정하는 옵션을 전달할 수도 있습니다 .

포스트스크립트를 통해서도 이 작업을 수행할 수 있습니다.

pdf2ps input.pdf input.ps
psnup -4 input.ps output.ps
ps2pdf output.ps output.pdf

여기서는 -44업(2x2)을 의미합니다.

그리고 이 PDF 파일을 Linux에서 직접 인쇄하려는 경우 CUPS 클라이언트에는 lprN-up 옵션이 있는 Berkley LPR 인쇄 스풀러( ) 버전이 포함되어 있다고 생각됩니다. 다음과 함께 옵션을 사용할 수 있습니다.

lpr -o number-up=4 input.pdf

아니면 기본값으로 설정하세요

lpoptions -p QueueName -o number-up=4

관련 정보