代码之家  ›  专栏  ›  技术社区  ›  l0b0

在单个页面中克隆PDF文件

  •  3
  • l0b0  · 技术社区  · 14 年前

    我有一个PDF文件,正好是A4大小的1/5,还有一个 script

    我希望能做同样的线 convert -density 1200 $pdf_file $pdf_file $pdf_file $pdf_file $pdf_file +append $a4_file 无需光栅化矢量图形 .

    2 回复  |  直到 14 年前
        1
  •  2
  •   l0b0    14 年前

    pdftk和pdfnup真是太棒了!

    的伪代码版本 finished script :

    for each file:
        inkscape --export-pdf
        pdftk (pdf-file x 5) cat output 5.pdf
        pdfnup 5.pdf --nup 5x1 --paper a4paper --orient landscape --outfile {recto,verso}.pdf
    
    pdftk R=recto.pdf V=verso.pdf cat R1W V1E output bookmark.pdf
    
        2
  •  1
  •   Kurt Pfeifle    14 年前

    好吧,我知道这是怎么回事,但我现在还没有机会测试它。

    现在考虑以下三个命令(如果不在Windows上,则需要Unix命令):

     gswin32c ^
        -sDEVICE=pdfwrite ^
        -o p1.pdf ^
        -dFIXEDMEDIA ^
        -sDEFAULTPAPERSIZE=a4 ^
        -r600x600 ^
        -dDEVICEWIDTHPOINTS=842 ^
        -dDEVICEHEIGHTPOINTS=595 ^
        -c "<</PageOffset [0 0]>> setpagedevice" ^
        -f c:/path/to/first.pdf
    
     gswin32c ^
        -sDEVICE=pdfwrite ^
        -o p2.pdf ^
        -dFIXEDMEDIA ^
        -sDEFAULTPAPERSIZE=a4 ^
        -r600x600 ^
        -dDEVICEWIDTHPOINTS=842 ^
        -dDEVICEHEIGHTPOINTS=595 ^
        -c "<</PageOffset [168.4 0]>> setpagedevice" ^
        -f c:/path/to/second.pdf
    
     gswin32c ^
        -sDEVICE=pdfwrite ^
        -o p3.pdf ^
        -dFIXEDMEDIA ^
        -sDEFAULTPAPERSIZE=a4 ^
        -r600x600 ^
        -dDEVICEWIDTHPOINTS=842 ^
        -dDEVICEHEIGHTPOINTS=595 ^
        -c "<</PageOffset [336.8 0]>> setpagedevice" ^
        -f c:/path/to/third.pdf
    

    现在您将有3个(以及更高版本:5个)新的PDF文件,没有任何附加的位图图形。

    pdftk

    请给一些反馈,如果这对你有效(不要让黑洞逃走:-)。