9

我正在尝试使用 iTextSharp 来读取/修改 PDF 元数据。我想出了如何使用 pdfreader 和 pdfstamper 来做到这一点。我想知道我是否还可以读取/修改其他元数据信息,例如版权信息以及 XMP Photoshop 命名空间中的其他一些信息。

我将非常感谢任何指向解决方案的指针。

谢谢你,穆鲁盖什。

4

2 回答 2

16

您可以使用“PdfReader”读取元数据。我读过这样的元数据:

PdfReader reader = new PdfReader("HelloWorldNoMetadata.pdf");
string s = reader.Info["Author"];

您可以尝试iTextSharp.text.xml.xmp.XmpWriter编写元数据类。我从来没有做过,但我在下面找到了这段代码

PdfReader reader = new PdfReader("HelloWorldNoMetadata.pdf");
PdfStamper stamper = new PdfStamper(reader,
 new FileOutputStream("HelloWorldStampedMetadata.pdf"));
HashMap info = reader.getInfo();
info.put("Author", "Bruno Lowagie");
info.put("Title", "Hello World stamped");
stamper.setMoreInfo(info);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
XmpWriter xmp = new XmpWriter(baos, info);
xmp.close();
stamper.setXmpMetadata(baos.toByteArray());
stamper.close();
于 2010-05-04T23:57:08.290 回答
7

尝试iTextSharp 书中的示例,其中有修改 pdf 文件任何部分的示例!

于 2011-03-01T11:39:34.927 回答