我有A4页的PDF。出于打印原因,每页包含两个相同的A5页。我要在Java程序中做的是拆分这些页面,并将每个唯一的A5页面零次使用多次作为模板来添加/替换一些文本。完成此操作后,我想将A5页面重新粘贴回A4页面(出于相同的打印原因)。
一个示例:使用第三页第一页和第二页一次。
这应该可能吗?不是吗 我正在考虑使用iText。但是,如果有人有其他建议,我很乐意改变主意。
我曾经用camlpdf做过类似的事情。就我而言,我有一个PDF,其中一个物理A4页面由两个逻辑A5页面组成,并且我想获得一个带有A5页面的普通PDF(即,逻辑和物理页面相同)。
这是在OCaml中(F#也存在camlpdf),我的代码如下:
let pdf = Pdfread.pdf_of_file None in_file ;;
let pdf =
let (pdf,_perms) = Pdfcrypt.decrypt_pdf "" pdf in
match pdf with
| Some pdf -> pdf
| None -> failwith "Could not decrypt"
;;
let pdf = Pdfmarks.remove_bookmarks pdf ;;
let pages = Pdfdoc.pages_of_pagetree pdf ;;
let pages = List.fold_right (fun page acc ->
let (y1,x1,y2,x2) = Pdf.parse_rectangle page.Pdfdoc.mediabox in
let box y1 x1 y2 x2 = Pdf.Array
[ Pdf.Real y1; Pdf.Real x1; Pdf.Real y2; Pdf.Real x2 ]
in
let xm = x1 *. 0.5 +. x2 *. 0.5 in
let pagel = {page with Pdfdoc.mediabox = box y1 x1 y2 xm}
and pager = {page with Pdfdoc.mediabox = box y1 xm y2 x2}
in pagel::pager::acc
) pages [] ;;
let pdf = Pdfdoc.change_pages false pdf pages ;;
Pdf.remove_unreferenced pdf ;;
Pdfwrite.pdf_to_file pdf out_file ;;
如果iText提供了类似的抽象,也许您可以执行类似的操作。步骤如下:
问题内容: 我需要在两台机器之间发送一些变量的值,并打算使用套接字来实现。我使用md5哈希算法作为发送数据的校验和,以确保正确传输数据。要执行md5哈希算法,我必须将数据转换为字节。我想同时传递变量的名称及其值。因为我有很多变量,所以我使用字典。 所以我想将类似的东西转换为字节? 换句话说,我有一个字典,里面有很多不同的数据类型,包括列表,列表又有多种不同的数据类型,我想将其转换为字节。然后在接收
问题内容: 我需要将JSONArray对象存储为字符串,然后检索该字符串并将其转换回JSONArray。 如果我做: 我会找回同一个物体吗? 我正在尝试将JSONArray存储在SQLite数据库中。 这就是我在看的东西。http://developer.android.com/reference/org/json/JSONArray.html#toString() 问题答案: 只要它是一个有效的
问题内容: 使用标准Java库,从IPV4地址的虚线字符串表示形式()到等效整数表示形式()的最快方法是什么。 相应地,反转所述操作的最快方法是什么-从整数到字符串表示形式? 问题答案: 字符串到整数: 整数到字符串:
问题内容: 我正在寻找将Java char数组转换为字节数组 而不创建中间体的方法,因为char数组包含密码。我查看了几种方法,但是它们似乎都失败了: 断言总是失败的(并且,至关重要的是,当在生产中使用该代码时,密码将被拒绝),但是print语句会打印出三次密码。为什么与和有所不同,却显得相同?我是否错过了空终止符之类的东西?我怎样做才能使转换和未转换工作? 问题答案: 问题是您使用构造函数,该构
问题内容: 是否有一种可靠的方法将任何对象转换为字符串,然后再次转换为同一对象?我已经看到了一些示例,这些示例中的人们使用转换它们,然后将该值传递给构造函数以再次重建对象,但并非所有对象都具有这样的构造函数,因此该方法不适用于所有情况。有什么办法? 问题答案: 是的,这称为序列化!
我在csv文件中有一个列,其中包含此格式的人员详细信息: 实际csv格式: 我想将它们拆分为一个新的csv文件,如下所示: 拆分详细信息: 拆分行分隔符: