PdfCircleAnnotationFacade Class
Exposes members used to organize circle annotations without access to their inner structure.
Namespace: DevExpress.Pdf
Assembly: DevExpress.Pdf.v24.2.Core.dll
NuGet Package: DevExpress.Pdf.Core
#Declaration
public class PdfCircleAnnotationFacade :
PdfShapeAnnotationFacade
#Related API Members
The following members return PdfCircleAnnotationFacade objects:
#Remarks
#Create Circle Annotations
The code sample below creates a circle annotation:
using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
{
// Load a document
processor.LoadDocument("..\\..\\Document.pdf");
// Access the first page properties
PdfPageFacade pageFacade = processor.DocumentFacade.Pages[0];
// Define an annotation area
PdfRectangle rectangle = new PdfRectangle(663, 526, 763, 576);
// Create a circle annotation
PdfCircleAnnotationFacade circleAnnotation = pageFacade.AddCircleAnnotation(rectangle);
// Specify annotation parameters
circleAnnotation.Author = "Nancy Davolio";
circleAnnotation.Contents = "Made in PDF Document API";
// Save the result
processor.SaveDocument("..\\..\\Result.pdf");
}
#Edit Circle Annotations
The PdfPageFacade.Annotations property returns all page annotation properties. You can filter circle annotation properties, cast them to the PdfCircleAnnotationFacade class, and use class properties to modify annotation parameters.
The code sample below retrieves all circle annotations on the first page and changes their border and fill color.
using DevExpress.Pdf;
using System.Linq;
using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
{
// Load a document
processor.LoadDocument("..\\..\\Document.pdf");
// Access the first page properties
PdfPageFacade pageFacade = processor.DocumentFacade.Pages[0];
// Retrieve all circle annotations
var circleAnnotations = pageFacade.Annotations.Where
(annotation => annotation.Type == PdfAnnotationType.Circle);
foreach (PdfCircleAnnotationFacade circleAnnotation in circleAnnotations)
{
// Change annotation parameters
circleAnnotation.Color = new PdfRGBColor(1,1,1);
circleAnnotation.InteriorColor = new PdfRGBColor(0.87, 0.60, 1.00);
}
// Save the result
processor.SaveDocument("..\\..\\Result.pdf");
}
#Flatten Circle Annotations
Call one of the following methods to flatten an annotation:
Method | Description |
---|---|
Pdf |
Flattens document annotations. |
Pdf |
Flattens annotations of a specific page. |
Pdf |
Flattens a specific annotation. |
The code sample below flattens all circle annotations on the first page:
using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
{
// Load a document
processor.LoadDocument("..\\..\\Document.pdf");
// Access the first page properties
PdfPageFacade pageFacade = processor.DocumentFacade.Pages[0];
// Flatten all circle annotations
pageFacade.FlattenAnnotations(PdfAnnotationType.Circle);
// Save the result
processor.SaveDocument("..\\..\\Result.pdf");
}
#Remove Circle Annotations
Call the PdfAnnotationFacade.Remove() method to remove a specific annotation.
The code sample below removes all circle annotations from the first page:
using DevExpress.Pdf;
using System.Linq;
using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
{
// Load a document
processor.LoadDocument("..\\..\\Document.pdf");
// Access the first page properties
PdfPageFacade pageFacade = processor.DocumentFacade.Pages[0];
// Retrieve all circle annotations
var circleAnnotations = pageFacade.Annotations.Where
(annotation => annotation.Type == PdfAnnotationType.Circle).ToList();
foreach (PdfCircleAnnotationFacade circle in circleAnnotations)
{
// Remove each annotation
circle.Remove();
}
// Save the result
processor.SaveDocument("..\\..\\Result.pdf");
}