使用iTextSharp读取/修改PDF元数据

mur*_*uge 8 c# pdf xmp metadata itextsharp

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

我非常感谢任何解决方案的指针.

谢谢,Murugesh.

Jay*_*ggs 14

您可以使用`PdfReader'读取元数据.我读过这样的元数据:

PdfReader reader = new PdfReader("HelloWorldNoMetadata.pdf");
string s = reader.Info["Author"];
Run Code Online (Sandbox Code Playgroud)

您可以尝试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();
Run Code Online (Sandbox Code Playgroud)


Maj*_*ajd 6

试试iTextSharp书中的例子,有关于修改pdf文件任何部分的例子!