나는 PDF 파일의 범위가 1.pdf
, 2.pdf
내가 한 페이지에 바둑판 식으로 모든 PDF 파일로, 하나 개의 파일에 병합하고 싶다고 등.
현재이 pdftk
파일을 병합 하려고 시도했지만 별도의 페이지에 배치됩니다.
pdftk 1.pdf 2.pdf ... cat output merged.pdf
대신 개별 PDF 파일을 하나의 마스터 페이지로 바둑판 식으로 배열하는 방법이 merged.pdf
있습니까?
나는 PDF 파일의 범위가 1.pdf
, 2.pdf
내가 한 페이지에 바둑판 식으로 모든 PDF 파일로, 하나 개의 파일에 병합하고 싶다고 등.
현재이 pdftk
파일을 병합 하려고 시도했지만 별도의 페이지에 배치됩니다.
pdftk 1.pdf 2.pdf ... cat output merged.pdf
대신 개별 PDF 파일을 하나의 마스터 페이지로 바둑판 식으로 배열하는 방법이 merged.pdf
있습니까?
답변:
나는 이것을 오늘 시험했다 :
pdfjam Page1.pdf Page2.pdf --nup 2x1 --landscape --outfile Page1+2.pdf
한 페이지에 2 페이지를 넣습니다.
--nup 1x2 --no-landscape
--noautoscale true
이 스크립트는 pdf 페이지를 바둑판 식으로 배열합니다. 슬라이스를 페이지 당 필요한 것으로 변경하십시오.
#!/usr/bin/ruby
latexhead = <<'EOF'
\documentclass{article}
\usepackage[pdftex]{graphicx}
\usepackage[margin=0.1in]{geometry}
\usepackage{pdfpages}
\begin{document}
EOF
latextail = <<'EOF'
\end{document}
EOF
pages = %x[pdfinfo #{ARGV[0]}].split(/\n/).select{|x| x=~ /Pages:/}[0].split(/\s+/)[1].to_i
puts latexhead
s = (1..pages).each_slice(4).to_a
s.each do |a|
puts "\\begin{figure}"
a.each do |p|
puts "\\includegraphics[page=#{p},scale=0.4,width=.5\\textwidth]{#{ARGV[0]}}"
end
puts "\\end{figure}"
end
puts latextail
ImageMagick의 몽타주 를 사용할 수 있습니다
$ montage *.pdf merged.pdf
파일 이름이 "시스템 별"순서 인 경우 pdftk *.pdf cat output merged.pdf
제대로 작동합니다.
다음은 "시스템 별"순서의 의미입니다.
예 :
Ubuntu 11.04에 3 개의 파일이 있습니다 : 1.pdf, 2.pdf, 10.pdf
파일이 순서대로 병합됩니다 : 10.pdf 1.pdf 2.pdf ( ls -l
병합 파일과 동일한 순서로 반환)
가장 안전한 명명 규칙 : 0001.pdf, 0002.pdf 등
pdftk
입력 PDF를 타일로 포함하는 한 페이지 PDF를 만드는 데 사용하는 방법을 찾고 있습니다.
pdfnup
또는 pdfjam
과 --nup
옵션을 선택합니다.
*
는 사용중인 쉘에 의해 확장됩니다. pdfnup
는 보이지 않지만 *.pdf
대신 작업 디렉토리의 모든 파일 목록이 파일 이름으로 끝나는 것을 봅니다 .pdf
.
하나 folderstructure에서 PDF의 큰 숫자를 가지고, 경우 그리고 당신은 TeX의 설치있어,이 스크립트는 모든 PDF를두고 재귀 하나 개의 큰 파일로 :
#!/bin/bash
#
# pdfdir OUTPUT_FILE
#
# produces one big PDF file of all PDF files in .
#
if [ $# -ne 1 ] || [ -z "$1" ]; then
echo "Syntax: pdfdir OUTPUT_FILE"
exit 1
fi
FILE="$(echo "$1"|sed -e 's/\.\(pdf\|tex\)$//')"
for F in "$FILE" "$FILE.tex" "$FILE.pdf" "$FILE.aux" "$FILE.log" ; do
if [ -e "$F" ]; then
echo "$F exists already."
exit 2
fi
done
cat >"$FILE.tex" <<EOF
\documentclass{article}%
\usepackage{pdfpages}%
\usepackage{grffile}%
\listfiles%
\begin{document}%
%\tableofcontents%
EOF
# helper functions
exist_pdf_files () {
[ $(find -L "$1" -name \*.pdf -o -name \*.PDF -type f 2>/dev/null|wc -l) -eq 0 ] && return 1
return 0
}
list_directories () {
find -L "$1" -maxdepth 1 -mindepth 1 -type d 2>/dev/null | sort
}
list_pdf_files () {
# version with " around filenames:
#find -L "$1" -maxdepth 1 -mindepth 1 -name \*.pdf -o -name \*.PDF -type f 2>/dev/null | sort | \
# sed -e 's/^/\\includepdf[pages=-]{"/; s/$/"}%/'
# version without " around filenames:
find -L "$1" -maxdepth 1 -mindepth 1 -name \*.pdf -o -name \*.PDF -type f 2>/dev/null | sort | \
sed -e 's/^/\\includepdf[pages=-]{/; s/$/}%/'
}
tex_headline () {
echo "$1" | sed -e 's/_/\\_/g'
}
# current folder (lefel 0):
list_pdf_files . >>"$FILE.tex"
# Bearbeite Ebene 1:
list_directories . | while read -r DIR1; do
# Are there PDFs in folders below that level?
exist_pdf_files "$DIR1" || continue
# Yes ...
tex_headline "\section{${DIR1##*/}}%"
# those:
list_pdf_files "$DIR1"
# Level 2:
list_directories "$DIR1" | while read -r DIR2; do
exist_pdf_files "$DIR2" || continue
tex_headline "\subsection{${DIR2##*/}}%"
list_pdf_files "$DIR2"
# Level 3:
list_directories "$DIR2" | while read -r DIR3; do
exist_pdf_files "$DIR3" || continue
tex_headline "\subsubsection{${DIR3##*/}}%"
list_pdf_files "$DIR3"
# Level 4:
list_directories "$DIR3" | while read -r DIR4; do
exist_pdf_files "$DIR4" || continue
tex_headline "\paragraph{${DIR4##*/}}%"
list_pdf_files "$DIR4"
# Level 5:
list_directories "$DIR4" | while read -r DIR5; do
exist_pdf_files "$DIR5" || continue
tex_headline "\subparagraph{${DIR5##*/}}%"
list_pdf_files "$DIR5"
done
done
done
done
done >>"$FILE.tex"
echo "\end{document}%" >>"$FILE.tex"
echo "Sourcecode to PDF directly [J/n]"
read -r ANSWER
case "$ANSWER" in
[JjYy]) ;;
*) exit 0 ;;
esac
pdflatex "$FILE"
[ $? -eq 0 ] && rm -f "$FILE.aux" "$FILE.log" "$FILE.tex"
나는 그 코드를 작성하지 않았으며 여기 토론에서 얻었습니다 : http://www.listserv.dfn.de/cgi-bin/wa?A2=ind1201&L=tex-dl&T=0&P=10771
매우 유용합니다. 독일어 의견을 영어로 번역했습니다.
감사합니다, Alexander
이 링크 : http://www.verypdf.com/wordpress/201302/how-to-combine-4-page-pdf-into-1-page-pdf-file-to-save-ink-and-papers-34505 .html 은 VeryPDF PDF Stitcher가 세로 또는 가로로 작업을 수행 할 수 있음을 보여줍니다. http://www.verypdf.com/app/pdf-stitch/index.html 에서 다운로드 하십시오.
Acrobat Pro와 같은 도구를 사용하여 원하는 페이지를 PDF 문서로 저장하십시오.
여러 페이지를 사용하여 문서를 페이지 기능으로 인쇄하고 pdf 문서로 다시 인쇄하십시오.
단일 페이지에 여러 페이지. :-)