Skip to main content
All docs
V25.1
  • PdfPageFacade.AddFreeTextAnnotation(PdfRectangle, String) Method

    Creates a free text annotation in the specified page rectangle.

    Namespace: DevExpress.Pdf

    Assembly: DevExpress.Pdf.v25.1.Core.dll

    NuGet Package: DevExpress.Pdf.Core

    Declaration

    public PdfFreeTextAnnotationFacade AddFreeTextAnnotation(
        PdfRectangle rect,
        string text
    )

    Parameters

    Name Type Description
    rect PdfRectangle

    A page area to add the annotation.

    text String

    An annotation text.

    Returns

    Type Description
    PdfFreeTextAnnotationFacade

    An object that contains free text annotation properties.

    Remarks

    Example: Create a Text Box Annotation

    The code sample below creates a free text annotation:

    free text

    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 free text annotation in this area
        PdfFreeTextAnnotationFacade freeText =
           pageFacade.AddFreeTextAnnotation(rectangle, "Free Text Annotation");
    
        // Specify annotation parameters
        freeText.Author = "Nancy Davolio";
        freeText.BorderWidth = 2;
    
        // Save the result
        processor.SaveDocument("..\\..\\Result.pdf");
    }
    

    Example: Create a Callout Annotation

    Call a free text annotation’s SetCallout method to add a callout line to the annotation. The method call sets the annotation’s Intent property to FreeTextCallout.

    The code sample below creates a callout annotation pointed at a specific phrase:

    callout

    using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
    {
        // Load a document
        processor.LoadDocument("..\\..\\Document.pdf");
    
        // Access the first page properties
        PdfPageFacade pageFacade = processor.DocumentFacade.Pages[0];
        PdfRectangle calloutRectangle;
    
        // Find the target phrase in the document
        string calloutText = "Evaluation";
        PdfTextSearchResults searchResults = processor.FindText(calloutText);
    
        if (searchResults.Status == PdfTextSearchStatus.Found)
        {
            // Obtain the target phrase rectangle
            calloutRectangle = searchResults.Rectangles[0].BoundingRectangle;
    
            // Define an annotation area
            PdfRectangle rectangle = new PdfRectangle(663, 526, 763, 576);
    
            // Create a free text annotation in this area
            PdfFreeTextAnnotationFacade freeText =
                pageFacade.AddFreeTextAnnotation(rectangle, "Free Text Annotation");
    
            // Specify annotation parameters
            freeText.Author = "Nancy Davolio";
    
            // Add a callout line pointed at the center of the target phrase
            freeText.SetCallout(PdfAnnotationLineEndingStyle.OpenArrow, calloutRectangle.Center);
        }
    
        // Save the result
        processor.SaveDocument("..\\..\\Result.pdf");
    }
    

    Example: Create a Typewriter Annotation

    Set a free text annotation’s Intent property to FreeTextTypewriter to convert the annotation to a typewriter (click-to-type) object. This object has no border, callout line, or padding between the text and annotation bounds.

    The code sample below creates a typewriter annotation:

    typewriter 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 free text annotation
        PdfFreeTextAnnotationFacade freeText =
            pageFacade.AddFreeTextAnnotation(rectangle, "Free Text Annotation");
    
        // Specify annotation parameters
        freeText.Author = "Nancy Davolio";
        freeText.Intent = PdfFreeTextAnnotationIntent.FreeTextTypewriter;
    
        // Save the result
        processor.SaveDocument("..\\..\\Result.pdf");
    }
    
    See Also