zoukankan      html  css  js  c++  java
  • 剪切、合并PDF

    一、剪切PDF

    Ghostscript是一套基于PostScript和PDF等页面描述语言的解释器的软件套件,它可以直接操作PostScript和PDF文档,也可以作为PostScript到PDF的转换器等。 下面的例子用Ghostscript来截取PDF页面的部分输出。

    gs -o output.pdf -sDEVICE=pdfwrite -g3600x7200 -c "<</PageOffset [0 0]>> setpagedevice" -f input.pdf

     其中:

    -g3600x7200表示从基准点处(页面左下角)截取大小为3600x7200像素的页面输出,由于pdfwrite默认分辨率为720dpi,因此这实际表示5inx10in大小的页面;

    -c "<<PageOffset [0 0]>> setpagedevice"表示处理随后的PostScript代码,先把页面向基准点偏移给定的位移,然后再输出,这里[0 0]表示不偏移。需要说明的是,这里的偏移量要使用负数,且这个量是以PDF文件默认的单位72dpi为准。 

    通过指定不同的输出页面大小和偏移量,我们可以截取PDF任意部分页面,也可以切除PDF的白边。

    二、合并PDF

    一个简单的办法是使用$LaTeX$的宏包pdfpages。在创建PDF时可以使用pdfpages方便地插入一个或多个外部PDF的指定页面,我们可以利用这个功能来合并PDF。下面这个简单的例子将2页A5大小(210mm×148mm)的页面合并成一个A4大小(210mm×297mm)的页面。

    documentclass[a4paper]{article}
    usepackage{pdfpages}
    
    egin{document}
    includepdfmerge[nup=1x2]{1.pdf,2.pdf} % nup选项表示在一张纸上放置多个逻辑页面:水平方向上一页,垂直方向上两页
    end{document}
  • 相关阅读:
    对于EMC DAE、DPE、SPE、SPS的解释
    linux用户添加组
    do_group_exit函数
    bpf移植到3.10
    网络中的GSO分段,整个tcp/ip协议栈中都哪里发生了分段
    发送tcp的时候,数据包是如何拷贝的
    安装llvm
    怎么打印lua的函数调用栈
    调度的log 1.5ms 12ms 4ms
    显示两个文本的差异:强大的grep
  • 原文地址:https://www.cnblogs.com/zhjhuang/p/8426635.html
Copyright © 2011-2022 走看看