각각 1 ~ 4 페이지의 PDF 파일이 많이 있습니다. 이 파일 각각에 대해 새 파일을 자동으로 생성하는 솔루션이 필요합니다. 새 파일에는 원본 파일의 내용이 두 번 포함되어야합니다 (예 : 1에서 끝까지 페이지, 같은 순서로 같은 페이지가 다시옵니다).
어떻게하면 되나요?
각각 1 ~ 4 페이지의 PDF 파일이 많이 있습니다. 이 파일 각각에 대해 새 파일을 자동으로 생성하는 솔루션이 필요합니다. 새 파일에는 원본 파일의 내용이 두 번 포함되어야합니다 (예 : 1에서 끝까지 페이지, 같은 순서로 같은 페이지가 다시옵니다).
어떻게하면 되나요?
답변:
PDFtk를 사용하는 Windows 용 솔루션 (태그별로 사용중인 것 같습니다) :
그러면 1-end 페이지와 1-end 페이지가있는 PDF가 생성됩니다.
pdftk in.pdf cat 1-end 1-end output out.pdf
각 페이지를 함께 복제하려면 (1,1,2,2, ...에서와 같이) 다음 배치 파일을 사용하십시오.
@echo off
set pages=
setlocal enabledelayedexpansion
for /f "tokens=2" %%a in ('pdftk in.pdf dump_data ^| find /i "NumberOfPages"') do for /l %%b in (1,1,%%a) do set pages=!pages! %%b %%b
pdftk in.pdf cat!pages! output out.pdf
for %a in (*.pdf) do @pdftk "%~a" cat 1-end 1-end output "%~na (Duplicated)%~xa"
. 각 in.pdf (이름은 무엇이든 가능)에 대해 (Duplicated) .pdf에 해당 합니다. 저녁 식사를 즐기고 도움이 되었으면 답변을 수락하는 것을 잊지 마십시오 (왼쪽의 녹색 확인 표시 클릭).
내 의견에 질문에 대답하면 더 나은 해결책을 줄 수 있지만 아내를 위해 몇 가지 제안이 있습니다.
ImageMagick 은 이미지 조작을위한 크로스 플랫폼 명령 행 도구입니다. 설치 한 후에는 convert
도구를 사용하여 원하는 작업을 수행 할 수 있어야합니다 . 세부 사항은 운영 체제에 따라 다릅니다. 각 페이지가 두 배가 아닌 전체 파일의 두 복사본을 원한다고 가정합니다.
리눅스 / OSX / 유닉스 등
for n in *pdf; do convert -density 150 "$n" "$n" "$n"; done
기존 파일을 덮어 쓰므로 먼저 백업 할 수 있습니다.
Windows. 이것은 약간 잘못되었을 수 있습니다 .Windows를 사용하지 않으므로 테스트 할 수 없지만 일반적인 아이디어는 다음과 같습니다.
for %f in (*.pdf) do (convert.exe %f %f %f)
for
루프는 누락 done
및 $n
아마 인용되어야한다. 어쩌면 convert
작동 방식이 누락 되었지만 convert
동일한 파일을 세 번 전달하면 어떻게됩니까? 지금 테스트 할 수 없습니다.
convert infile1 infile2 ... infileN outfile
입니다. 따라서 동일한 파일을 세 번 전달하면 입력으로 두 배가 걸리고 출력과 동일한 파일에 씁니다. 하나 내가 그 한 테스트를 :).
Linux에서 각 페이지를 함께 복제하려면 (1,1,2,2, ...에서와 같이)이 스크립트에서 수행합니다.
#!/bin/bash
INPUTFILE=$*
PAGENUM=`pdftk ${INPUTFILE} dump_data | grep NumberOfPages | cut -d : -f 2 | cut -d " " -f 2`
PAGES=`seq 1 ${PAGENUM}`
DUPAGES=`for i in ${PAGES} ; do echo $i $i | tr "\n" " " ; done`
OUTPUT=`basename ${INPUTFILE} .pdf`.dup.pdf
pdftk ${INPUTFILE} cat ${DUPAGES} output ${OUTPUT}