Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
插入符注释是指示文本编辑的符号。插入符注释也是标记注释,因此插入符类派生自标记类,并提供获取或设置插入符注释属性以及重置插入符注释外观流的功能。
以下代码片段也适用于 Aspose.PDF.Drawing 库。
创建插入符注释的步骤:
以下代码片段演示如何将插入符注释添加到 PDF 文件中:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddCaretAnnotations()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Annotations();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "sample.pdf"))
{
// Create Caret Annotation for text insertion
var caretAnnotation1 = new Aspose.Pdf.Annotations.CaretAnnotation(document.Pages[1], new Aspose.Pdf.Rectangle(299.988, 713.664, 308.708, 720.769))
{
Title = "Aspose User",
Subject = "Inserted text 1",
Flags = Aspose.Pdf.Annotations.AnnotationFlags.Print,
Color = Aspose.Pdf.Color.Blue
};
// Create Caret Annotation for text replacement
var caretAnnotation2 = new Aspose.Pdf.Annotations.CaretAnnotation(document.Pages[1], new Aspose.Pdf.Rectangle(361.246, 727.908, 370.081, 735.107))
{
Flags = Aspose.Pdf.Annotations.AnnotationFlags.Print,
Subject = "Inserted text 2",
Title = "Aspose User",
Color = Aspose.Pdf.Color.Blue
};
// Create StrikeOut Annotation
var strikeOutAnnotation = new Aspose.Pdf.Annotations.StrikeOutAnnotation(document.Pages[1],
new Rectangle(318.407, 727.826, 368.916, 740.098))
{
Color = Aspose.Pdf.Color.Blue,
QuadPoints = new[] {
new Point(321.66, 739.416),
new Point(365.664, 739.416),
new Point(321.66, 728.508),
new Point(365.664, 728.508)
},
Subject = "Cross-out",
InReplyTo = caretAnnotation2,
ReplyType = Aspose.Pdf.Annotations.ReplyType.Group
};
document.Pages[1].Annotations.Add(caretAnnotation1);
document.Pages[1].Annotations.Add(caretAnnotation2);
document.Pages[1].Annotations.Add(strikeOutAnnotation);
// Save PDF document
document.Save(dataDir + "AddCaretAnnotations_out.pdf");
}
}
请尝试使用以下代码片段在 PDF 文档中获取插入符注释:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void GetCaretAnnotation()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Annotations();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "sample_caret.pdf"))
{
// Get Caret annotations from the first page
var caretAnnotations = document.Pages[1].Annotations
.Where(a => a.AnnotationType == Aspose.Pdf.Annotations.AnnotationType.Caret)
.Cast<Aspose.Pdf.Annotations.CaretAnnotation>();
// Iterate through the annotations and print their details
foreach (var ca in caretAnnotations)
{
Console.WriteLine($"{ca.Rect}");
}
}
}
以下代码片段演示如何从 PDF 文件中删除插入符注释。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DeleteCaretAnnotation()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Annotations();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "sample_caret.pdf"))
{
// Get Caret annotations from the first page
var caretAnnotations = document.Pages[1].Annotations
.Where(a => a.AnnotationType == Aspose.Pdf.Annotations.AnnotationType.Caret)
.Cast<Aspose.Pdf.Annotations.CaretAnnotation>();
// Delete each Caret annotation
foreach (var ca in caretAnnotations)
{
document.Pages[1].Annotations.Delete(ca);
}
// Save PDF document after deleting annotations
document.Save(dataDir + "DeleteCaretAnnotation_out.pdf");
}
}
Aspose.PDF for .NET 支持在现有 PDF 文件中添加和操作注释的功能。最近,我们的一些客户提出了需要对 PDF 文档的特定页面区域进行编辑(删除文本、图像等元素)。为了满足这一要求,提供了一个名为 RedactionAnnotation 的类,可以用于编辑特定页面区域,或者可以用于操作现有的 RedactionAnnotations 并对其进行编辑(即扁平化注释并删除其下方的文本)。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void RedactPage()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Annotations();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Create RedactionAnnotation instance for a specific page region
var annot = new Aspose.Pdf.Annotations.RedactionAnnotation(document.Pages[1], new Aspose.Pdf.Rectangle(200, 500, 300, 600));
annot.FillColor = Aspose.Pdf.Color.Green;
annot.BorderColor = Aspose.Pdf.Color.Yellow;
annot.Color = Aspose.Pdf.Color.Blue;
// Text to be printed on the redact annotation
annot.OverlayText = "REDACTED";
annot.TextAlignment = Aspose.Pdf.HorizontalAlignment.Center;
// Repeat Overlay text over the redact Annotation
annot.Repeat = true;
// Add annotation to the annotations collection of the first page
document.Pages[1].Annotations.Add(annot);
// Flattens annotation and redacts page contents (i.e., removes text and image under the redacted annotation)
annot.Redact();
// Save the result document
document.Save(dataDir + "RedactPage_out.pdf");
}
}
Aspose.Pdf.Facades 命名空间中还有一个名为 PdfAnnotationEditor 的类,提供了在 PDF 文件中操作现有注释的功能。该类包含一个名为 RedactArea(..) 的方法,提供了删除特定页面区域的能力。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void RedactPageWithFacadesApproach()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Annotations();
// Create an instance of PdfAnnotationEditor
using (var editor = new Aspose.Pdf.Facades.PdfAnnotationEditor())
{
// Redact a specific page region
editor.RedactArea(1, new Aspose.Pdf.Rectangle(100, 100, 20, 70), System.Drawing.Color.White);
// Bind PDF document
editor.BindPdf(dataDir + "input.pdf");
// Save the result document
editor.Save(dataDir + "FacadesApproach_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.