代码之家  ›  专栏  ›  技术社区  ›  muruge

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

  •  8
  • muruge  · 技术社区  · 16 年前

    我正在尝试使用ITextSharp读取/修改PDF元数据。我用PDFReader和PDFStamper解决了这个问题。我想知道是否还可以读取/修改其他元数据信息,比如版权信息和XMP Photoshop名称空间中的其他一些元数据信息。

    我将非常感谢任何有关解决方案的建议。

    谢谢您, Murugesh。

    2 回复  |  直到 15 年前
        1
  •  14
  •   Jay Riggs    16 年前

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

    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();
    
        2
  •  6
  •   Majd    15 年前

    尝试中的示例 iTextSharp book 有修改PDF文件任何部分的示例!