我正在尝试使用iTextSharp来读取/修改PDF元数据。我想出了如何使用pdfreader和pdfstamper来做到这一点。我想知道我是否还可以读取/修改其他元数据信息,如版权信息和XMP photoshop命名空间中的其他几个。
我非常感谢任何有关解决方案的提示。
谢谢你, Murugesh。
答案 0 :(得分:14)
您可以使用`PdfReader'读取元数据。我读过这样的元数据:
PdfReader reader = new PdfReader("HelloWorldNoMetadata.pdf");
string s = reader.Info["Author"];
您可以尝试iTextSharp.text.xml.xmp.XmpWriter
类来编写元数据。我从来没有这样做,但下面是I found this code:
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();
答案 1 :(得分:6)
尝试iTextSharp book中的示例,有修改pdf文件任何部分的示例!