페이지 수가 동일한 두 개의 PDF 파일이 있고 각 페이지를 다른 파일의 해당 페이지와 비교하고 싶습니다. 이를 위해 File1.pdf의 1페이지를 File2.pdf의 1페이지와 병합하여 새 문서에 한 페이지를 가져오고 싶습니다. 그런 다음 File1.pdf의 2페이지를 File2.pdf의 2페이지와 함께 새 파일의 2페이지로 만듭니다.
~ 안에이 질문--nup
나는 다음 명령 옵션을 사용하여 한 페이지에 두 페이지를 넣을 수 있다는 것을 이미 배웠습니다 pdfjam
.
pdfjam File1.pdf File2.pdf --nup 2x1 --landscape --outfile File1+2.pdf
패키지 를 사용해도 동일한 결과를 얻을 수 있습니다 ImageMagick
.
montage *.pdf merged.pdf
그러나 이렇게 하면 첫 번째 파일의 1페이지와 2페이지가 합쳐지고 나중에 두 번째 파일에도 동일한 작업이 수행됩니다. 의도한 대로는 아닙니다.
내가 한 일은 두 문서를 분할하는 것입니다. 첫 번째 파일의 파일 이름은 짝수이고, 두 번째 파일은 홀수입니다(실제로는 적절한 파일 이름으로 파일을 새로 만들었습니다). 그런 다음 모든 파일을 다시 병합했습니다.
pdftk *.pdf cat output merged.pdf
마지막으로 한 페이지에 두 페이지를 넣습니다.
pdfjam --nup 2x1 --landscape --outfile merged2up.pdf merged.pdf
이 작업을 수행하는 루프를 사용하여 스크립트를 작성할 수 있지만 이를 달성하기 위한 쉬운 한 줄이 있는지 궁금합니다. 어쩌면 올바른 pdfjam, pdftk 또는 ImageMagick 명령을 찾지 못했을까요?
답변1
File1.pdf와 File2.pdf를 페이지로 분할한 다음 다음과 같이 해당 tmp 파일을 File1+2.pdf로 결합할 수 있습니다.
# Split files, note the naming scheme
pdfseparate File1.pdf temp-%04d-file1.pdf
pdfseparate File2.pdf temp-%04d-file2.pdf
# Combine the final pdf
pdfjam temp-*-*.pdf --nup 2x1 --landscape --outfile File1+2.pdf
# Clean up
rm -f temp-*-*.pdf
답변2
나는 이것을 사용할 것입니다 :
sudo apt install psutils
sudo apt install ghostscript
pdf2ps -sOutputFile=input1file%d.ps input1file.pdf input1file.ps # cut to individual pages
pdf2ps -sOutputFile=input2file%d.ps input2file.pdf input2file.ps
psmerge -oinput.ps *.ps # put them together page by page from the alternative files
pstops -p a4 "2:[email protected](21cm,0)[email protected](21cm,14.85cm)" input.ps output.ps # put 2 pages on one
ps2pdf output.ps output.pdf # convert back to pdf
아마도 당신은 그 점을 높이 평가할 것입니다. 작고 빠르기 때문에 마음에 들지만 매뉴얼 페이지는 개선이 필요합니다. :-(
답변3
(OP에 필요한 것이 무엇인지 오해하지 않으면) 여기에 간단한 (r) 솔루션이 있습니다.
pdftk A=File1.pdf B=File2.pdf shuffle A B output tmp-Figure1+2.pdf
pdfjam tmp-Figure1+2.pdf --nup '2x1' --landscape --outfile Figure1+2.pdf
rm tmp-Figure1+2.pdf
를 사용하면 pdftk ... shuffle A B ...
다음과 같은 중간 PDF 파일을 만들 수 있습니다.
File1-page1
File2-page1
File1-page2
File2-page2
. . . .
그런 다음 를 사용하여 pdfjam
중간 파일의 홀수 페이지와 짝수 페이지를 병합합니다.
File1-page1 File2-page1
File1-page2 File2-page2
. . . .
방금이 솔루션을 생각해 내고 테스트했습니다.
답변4
A, 조금 늦었지만 다른 사람에게는 도움이 될 수 있습니다.
페이지를 나란히 표시하는 OP의 원래 접근 방식은 제공된 다른 답변을 통해 달성할 수 있습니다.
그러나 작은 텍스트 차이를 찾는 것이 목표라면 접근 방식이 어려울 수 있습니다. 이를 위해 pdfdiff를 사용하세요. 그 중 상업용, 오픈 소스, 명령줄 및 GUI 등 다양한 작성자의 PDFdiff가 있습니다.
https://duckduckgo.com/?q=pdfdiff&t=ffab&ia=software
이 접근 방식은 "동일한" 이미지가 다르게 인코딩될 수 있으므로 이미지에는 효과적이지 않습니다.