如何添加便笺,在光标处插入文本.使用带有C#的iTextSharp在现有PDF文件中添加注释
本文关键字:添加 iTextSharp 注释 文件 PDF 插入文本 何添加 光标 | 更新日期: 2023-09-27 18:30:13
我想使用带有C#的iTextSharp在现有PDF文件中添加注释注释。
请给出在现有PDF文件中添加注释的示例代码。
此处为我的注释PS脚本:
[/Contents (My Text contents) /Rect [100 600 150 550] /SrcPg 1 /Title (My Title text) /Color [0 0 1] /Subtype /Caret /ANN pdfmark
iText(Sharp)示例TimetableAnnotations1.java/TimetableAnnotattions1.cs来自《iText in Action--2nd Edition》第7章,展示了如何在现有PDF中添加注释。
中心代码是(在C#示例中):
rect = GetPosition(screening);
annotation = PdfAnnotation.CreateText(
stamper.Writer, rect, movie.MovieTitle,
string.Format(INFO, movie.Year, movie.Duration),
false, "Help"
);
annotation.Color = WebColors.GetRGBColor(
"#" + movie.entry.category.color
);
stamper.AddAnnotation(annotation, page);
其中stamper
是处理PDF文件的PdfStamper
;movie
是一个数据结构,示例从中检索注释的标题、文本和颜色。
PdfAnnotation
提供了多种其他Create...
方法来创建其他类型的注释。
rect = GetPosition(screening);
有人能解释一下为什么要用这个吗。。有没有办法找到当前光标的位置(顶部、底部、高度、宽度)
与注释一样,
Document doc = new Document(PageSize.A4, 50, 50, 50, 50);
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(@"C:'Users'Asus'Desktop'Test.pdf", FileMode.OpenOrCreate));
doc.AddDocListener(writer);
doc.Open();
doc.Add(new Annotation("annotation", "The text displayed in the sticky note", 100f, 500f, 200f, 600f));
doc.Close();
这对我来说很好。