使用iTextSharp读取/修改PDF元数据
我正在尝试使用iTextSharp来读取/修改PDF元数据。 我想出了如何使用pdfreader和pdfstamper来做到这一点。 我想知道我是否还可以读取/修改其他元数据信息,如版权信息和XMP photoshop命名空间中的其他几个。
我非常感谢任何解决方案的指针。
谢谢,Murugesh。
您可以使用`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();
试试iTextSharp书中的例子,有关于修改pdf文件任何部分的例子!