3

x、yの場所に付箋を貼ろうとしています。このために、私は.netのpdfclownアノテーションクラスを使用しています。以下は利用可能なものです。

    using files = org.pdfclown.files;
    public override bool Run()
    {
        files::File file = new files::File();
        Document document = file.Document;
        Populate(document);
        Serialize(file, false, "Annotations", "inserting annotations");
        return true;
    }

    private void Populate(Document document)
    {
        Page page = new Page(document);
        document.Pages.Add(page);
        PrimitiveComposer composer = new PrimitiveComposer(page);
        StandardType1Font font = new StandardType1Font(document, StandardType1Font.FamilyEnum.Courier, true, false);
        composer.SetFont(font, 12);
        annotations::Note note = new annotations::Note(page, new Point(78, 658), "this is my annotation...");
        note.IconType = annotations::Note.IconTypeEnum.Help;
        note.ModificationDate = new DateTime();
        note.IsOpen = true;
        composer.Flush();
    }

注釈のリンク これは、空白のpdfの78、658の座標に付箋を貼っています。

問題は、いくつかのデータがある特定のpdfにその付箋が欲しいということです。どうすれば変更できますか...助けてくれてありがとう。

4

1 に答える 1

4

私はPDFClownの作成者です。これは、付箋のような注釈を既存のページに挿入する正しい方法です。

using org.pdfclown.documents;
using annotations = org.pdfclown.documents.interaction.annotations;
using files = org.pdfclown.files;
using System.Drawing;

. . .

// Open the PDF file!
using(files::File file = new files::File(@"C:\mypath\myfile.pdf"))
{
  // Get the document (high-level representation of the PDF file)!
  Document document = file.Document;
  // Get, e.g., the first page of the document!
  Page page = document.Pages[0];

  // Insert your sticky note into the page!
  annotations::Note note = new annotations::Note(page, new Point(78, 658), "this is my annotation...");
  note.IconType = annotations::Note.IconTypeEnum.Help;
  note.ModificationDate = new DateTime();
  note.IsOpen = true;

  // Save the PDF file!
  file.Save(files::SerializationModeEnum.Incremental);
}

ファイルを保存する方法については、多くのオプションがあることを考慮してください(出力(メモリ内)ストリーム、個別のパス、圧縮ファイル、追加ファイルなど)。

ライブラリの配布に付随する50以上のサンプルと、APIドキュメントを見ると、それがいかに表現力豊かで強力であるかがわかります。そのアーキテクチャは、公式のAdobe PDFReference1.7に厳密に準拠しています。

楽しい!

于 2012-12-24T17:28:03.170 に答える