web-dev-qa-db-ja.com

PDF C#でファイルのメタデータを編集する

プログラムのようなPDFファイルのメタデータを編集するためのメソッドまたはライブラリを検索しています becypdfmetaedit

プログラムを書きたいのですが、このプログラムにこのオプトンが必要です。おそらく、c#のサンプルがいくつかあります。

ありがとう

16
subprime

PDF Sharpは次のように機能します:

using System;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;

namespace ConsoleApplication1
{
  class Program
  {
    static void Main (string[] args)
    {
      Program p = new Program();
      p.Test();

    }

    public void Test ()
    {
      PdfDocument document = PdfReader.Open ("Test.pdf");

      document.Info.Author = "ME";

      document.Save ("Result");
    }
  }

}

21
crauscher

PDFSharpの場合:PDFのカスタムプロパティのメタデータを変更/追加する場合は、PdfDocument.Info.Elementsオブジェクトを使用できます。

    String filename = @"d:\temp\Hugo-input.pdf";
    String outputfile = @"d:\temp\Hugo-output.pdf";
    PdfDocument document = PdfReader.Open(filename);
    document.Info.Elements.Add(new KeyValuePair<String,PdfItem>("/MyKey",new PdfString("MyValue")));
    document.Save(outputfile);

カスタムキーは常にスラッシュで開始してください。

このドキュメントをAdobeAcrobat Reader-> File-> Properties-> Customで開くと、キーと値を見つけることができます。

これはPDFSharp1.32で動作します

7
Hugo Geijteman

iTextSharp でできると思います。

3
Carles Company

PDF Sharp のPdfDocumentInformationクラスは要件を満たしていますか。

2
crauscher

ここでポン引き- 私の会社であるAtalasoftは、画像を操作するための.NETコンポーネントを作成しています 。スイートの一部には、ドキュメントメタデータの読み取り/書き込み機能が含まれていますPDFドキュメントメタデータ。無料ではありませんが、デスクトップアプリケーションの実行時ロイヤリティフリーです。

読むためのコードは単純です:

PdfDocumentMetadata metadata = PdfDocumentMetadata.FromStream(sourceStream);

編集して同じストリームに書き戻すには:

meta.Title = "Knicholas Knickleby";
meta.Author = "Edmund Wells";
sourceStream.Seek(0, SeekOrigin.Begin);
meta.Append(sourceStream, false); // false means don't merge - overwrite

カスタムフィールドは、ハッシュテーブルを介してサポートされます。

0
plinth

Aspose.PDF または Aspose.PDF.Kit これを行うことができます。

0
crauscher

Docotic.Pdfライブラリ は、PDFドキュメントのメタデータを読み取って更新するために使用できます。

PDFドキュメント (「作成者」、「タイトル」などのプロパティ)のメタデータを変更するために使用できるPdfDocument.Infoプロパティがあります。

また、埋め込みにアクセスする必要がある場合に役立つPdfDocument.Metadataプロパティもあります PDFドキュメント のXMPメタデータ。ライブラリは事前定義されたXMPスキーマをサポートしますまた、カスタムアプリケーション定義プロパティを設定するために使用することもできます。

ライブラリは、非商用アプリケーションでは無料です。 (2012年2月15日以降、図書館は無料ではなくなりました)

免責事項:私は会社で働いています。

0
Bobrovsky