PDF工具_PDF editor

PDF工具_PDF editor《Linux多线程服务端编程——使用muduoC++网络库》这本书是我自己用LaTeX排版的,在排版过程中也积累了一些小工具,今天把其中几个发布出来。这几个工具都直接基于开源的iText库,可从 http://itextpdf.com/ 下载。下载Groovy版本位于 https://github.com/chenshuo/typeset/tree/master/tools

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

《Linux多线程服务端编程——使用muduo C++网络库》这本书是我自己用LaTeX排版的,在排版过程中也积累了一些小工具,今天把其中几个发布出来。这几个工具都直接基于开源的 iText 库,可从 http://itextpdf.com/ 下载。

下载

Groovy 版本位于 https://github.com/chenshuo/typeset/tree/master/tools

Java 版本位于 https://github.com/chenshuo/recipes/tree/master/java/pdf

各个工具的输出示例位于 http://vdisk.weibo.com/s/kT4fL

剪裁(Crop)

为了充分利用屏幕空间,也便于在电子阅读器(iPad、Kindle)上阅读校对书稿,我一般会把PDF剪切为版心大小。例如下面左图是原始PDF,为纸张大小;右图是剪切之后的版心。

crop

剪切工具是 crop.groovy,设好CLASSPATH后可直接在命令行运行。其核心是根据版心和纸张尺寸算出左下角和右上角左边,然后剪切每一页。这个工具不管PDF的内容,如果需要根据页面内容剪裁PDF,可以使用Heiko Oberdiek的pdfcrop工具。

http://www.ctan.org/tex-archive/support/pdfcrop

http://code.google.com/p/pdfcrop2/

拼版(two-up)

有时候想在宽屏上同时阅读左右两页的书稿,除了可以用PDF阅读器本身的多页显示功能,我还常常自己做二合一(two-up)。这样得到的PDF也可以打印出来看,既节约纸张,而且与原稿是1:1大小。生成的PDF效果如下图。

twoup

二合一工具是twoup.groovy,其核心是算出左右两页在合页中的起始坐标。

小册子(booklet)

有时候我会把一章的内容打印出来,装订成一本小册子,这样读起来有翻书的感觉。为了节约纸张,在打印之前要拼版,这样一张纸双面能打印4个页码。例如8页内容可以打印到两张A4纸上:

booklet

装订这种小册子要用骑缝订,可用旋转订书机(http://www.amazon.cn/dp/B0080AF0FMhttp://product.dangdang.com/product.aspx?product_id=1141537002)。一本小册子一般应该控制在10页纸左右,即40个页码,再厚就订不透了。

对比PDF内容(diff)

在书籍出版之后,每次印刷都可能修订一些页码,那么可以用 diffpdf.sh 小工具找出哪些页面的内容有改动。这个工具的思路很土,就是把PDF渲染为多个PNG文件,然后用diff比较文件是否相同。

另外,SumatraPDF是非常好的PDF阅读器,它可以在更新PDF文件之后自动刷新内容,不必reload。

from: http://blog.csdn.net/solstice/article/details/8306916

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197789.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 神经网络知识点总结_经典神经网络

    神经网络知识点总结_经典神经网络本文基于文章,对神经网络的知识点做一个总结,可能不会对某些概念性的东西做详细介绍,因此需要对神经网络有基本的了解。FNN:前馈神经网络  神经网络的最基本也是最经典的形式,结果包括输入层,隐藏层和输出层,根据隐藏层的多少,分为shallownetwork和deepnetwork(deeplearning由此而来)Activationfunction  在神经网络的每

    2025年6月12日
    0
  • leetcode-160. 相交链表(链表)

    leetcode-160. 相交链表(链表)给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。/** * Definition for singly-linked list. * struct ListNode { * int val; *

    2022年8月11日
    0
  • PTSMessagingCell

    PTSMessagingCell

    2021年8月21日
    56
  • linux系统644、755、777权限详解「建议收藏」

    linux系统644、755、777权限详解「建议收藏」常用的linux文件权限:444r–r–r–600rw——-644rw-r–r–666rw-rw-rw-700rwx——744rwxr–r–755rwxr-xr-x777rwxrwxrwx从左至右,1-3位数字代表文件所有者的权限,4-6位数字代表同组用户的权限,7-9数字代表其他用户的权限。而具体的权限是由数字

    2022年6月17日
    26
  • mysql 根据时间范围查询

    mysql 根据时间范围查询时间格式为第一种写法:select*fromtestwherecreate_timebetween’2019-03-0513:04:07’and’2019-03-0813:04:07′;第二种写法:select*fromtestwherecreate_time>=’2019-03-0513:04:07’anddate&lt…

    2022年6月25日
    38
  • 项目章程的内容有哪些?[通俗易懂]

    项目章程的内容有哪些?[通俗易懂]项目章程的内容有:1.项目目的或者批准项目的原因;2.可测量的项目目标和相关的成功标准;3.项目的总体要求;4.概括性的项目描述;5.项目的主要风险;6.总体里程碑进度计划;

    2022年8月2日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号