我有一本a6 pdf书。我想将它转换为a4 pdf,这样当我打印它时,我可以将a4页面切成两半(上下两边会有相同的内容,所以我最终会得到两本书的副本)将页面放在一起时,可以按顺序读取它们(我认为这称为强加)
Supose A,B,C,D是本书的4页。我希望生成的文件是:
DA
DA
和
CD
CD
我清楚了吗?
很抱歉,如果我没有使用正确的术语。
答案 0 :(得分:2)
正如建议的那样,强大的多价工具是解决方案,但它们需要与我附加的脚本结合才能执行您想要的任务
2copiesinA4 filename.pdf multivalent relative path
需要指定2个参数:
例如,如果您在 / mnt / home / 中有 Multivalent.jar , 将是您需要传递给脚本的相对路径。
#!/bin/bash
file=$1
multivalentpath=$2
pages="`pdftk $file dump_data | grep NumberOfPages | cut -d : -f2`"
echo $pages
halfpages="`echo -n $(( $pages / 2 ))`"
echo $halfpages
h="$(pdfinfo $file | grep "Page size" | cut -d x -f1 | tr 'Page size:' ' ' | xargs)"
w="$(pdfinfo $file | grep "Page size" | cut -d x -f2 | tr 'pts' ' ' | xargs)"
echo $h
echo $w
doubleheight="`let MULTIPLICATION=$h*2; echo $MULTIPLICATION`"
doublewidth="`let MULTIPLICATION=$w*2; echo $MULTIPLICATION`"
echo $doubleheight
echo $doublewidth
sequence="`for ((x=$pages, y=1;x>=$halfpages, y<=$halfpages;x--, y++)); do echo "$x $y "; done | awk 'NR %2==1 {print $1, $2, $1, $2 } NR % 2==0 { print $2, $1, $2, $1 }' | xargs | tr " " ","`"
echo $sequence
java -cp "$multivalentpath"Multivalent.jar tool.pdf.Impose -verbose -dim 2x2 -paper "$doubleheight"x"$doublewidth"pt -page "$sequence" $file
exit 0
<强>多价强>
把它放在磁盘上,记住它的相对路径
重要提示:请仔细检查您的PDF有多少页*整数多个4 **(如4,8,12,16 ...等等)
我上传了一些示例文件
生成的 IMPOSED 文件如下所示(请参阅gif动画
一旦打印完成,您的最后一页将成为您打印的第一张大量纸张
你会在** A4长边**的纸张中心(14.8厘米)处切割一次这样的纸张,以分隔形成2本书的两个块
然后再次剪切两张纸张块,以便能够关闭另一张纸上的每个子锁,以使该书具有顺序页面顺序
这是通常为了获得所谓的小册子(一本A5肖像书,在A4风景纸上打印2页纸张)的重复工作。显然,就像在我们的案例,对于打算在A4上打印的A6书籍来说,同样可以完成同一本书的2份副本,修改一些东西,但逻辑相同
拼版序列,需要页面序列为:
最后 - 第一,第二 - 倒数第二,倒数第三 - 第三......等等......
对于16页的书,拼版顺序为:
16 1,2 15,14 3,4 13,12 5,6 11,10 7,8 9
在我们的案例中,由于我们希望在A4纸上获得 TWO 同一本书的完整副本,我们在同一张纸上重复了两次这个序列
如果您需要仅一本 A6副本,我还开发了一种方法来获取 ONE SINGLE A6小册子副本,以满足我的个人需求。使用A4纸张打印
答案 1 :(得分:0)
你想“强加”你的PDF页面,多价可以做http://multivalent.sourceforge.net/Tools/pdf/Impose.html