Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

PdfFitVerticallyDestination Class

A destination that positions a specific X coordinate at the top left corner of the document window, and zooms a page so that it fits the window vertically.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Pdf.v24.2.Core.dll

NuGet Package: DevExpress.Pdf.Core

#Declaration

public class PdfFitVerticallyDestination :
    PdfDestination

The following members return PdfFitVerticallyDestination objects:

#Remarks

The FitV destination displays a page as follows:

  • A specific X coordinate (returned by the Left property) is positioned at the top left corner of the document window
  • The page is fit into the document window vertically (the Fit Height zoom)

You can associate any number of bookmarks and link annotations with a destination.

#Associate a Bookmark with a Destination

The code sample below creates a bookmark with a destination that displays the first page as follows:

bookmark

using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
    // Load a document
    pdfDocumentProcessor.LoadDocument("Documents//print_titles.pdf");

    // Create a FitV destination that refers to the first page
    PdfPage page = pdfDocumentProcessor.Document.Pages[0];
    PdfFitVerticallyDestination destination =
       new PdfFitVerticallyDestination(page, 612);

    // Create a bookmark
    PdfBookmark bookmark = new PdfBookmark();
    bookmark.Title = "DevExtreme Complete";

    // Associate the bookmark with the destination
    bookmark.Destination = destination;

    // Add the bookmark to the document collection
    pdfDocumentProcessor.Document.Bookmarks.Add(bookmark);

    // Save the result
    pdfDocumentProcessor.SaveDocument("out.pdf");
}

Call the PdfPageFacade.AddLinkAnnotation method and pass a PdfFitVerticallyDestination object as a parameter to create a link annotation associated with a destination.

The code sample below creates a link annotation with a destination that displays the sixth page as follows:

link annotation

using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
    // Load a document
    pdfDocumentProcessor.LoadDocument("Documents//Demo.pdf");

    // Access sixth page properties
    PdfPageFacade pageFacade = pdfDocumentProcessor.DocumentFacade.Pages[5];

    // Create a FitV destination that refers to the fifth page
    PdfFitVerticallyDestination destination =
       pageFacade.CreateFitVerticallyDestination(396);

    // Find a specific phrase
    PdfTextSearchResults textSearchResults = pdfDocumentProcessor.FindText("Patterns");

    // If the phrase is found, obtain the page that contains it
    // and the top vertical coordinate of the phrase's rectangle
    if (textSearchResults.Status == PdfTextSearchStatus.Found)
    {
        PdfPageFacade linkPageFacade =
           pdfDocumentProcessor.DocumentFacade.Pages[textSearchResults.PageNumber-1];
        PdfRectangle linkRectangle =
          textSearchResults.Rectangles[0].BoundingRectangle;

        // Create a link annotation associated with the bounding rectangle
        // and destination
        PdfLinkAnnotationFacade linkAnnotation =
           linkPageFacade.AddLinkAnnotation(linkRectangle, destination);
        linkAnnotation.HighlightMode = PdfAnnotationHighlightingMode.Push;
    }
    // Save the result
    pdfDocumentProcessor.SaveDocument("out.pdf");
}

#Inheritance

Object
DevExpress.Pdf.Native.PdfDocumentItem
DevExpress.Pdf.Native.PdfObject
PdfDestination
PdfFitVerticallyDestination
See Also