Back to Devexpress

PdfPageFacade.CreateXYZDestination() Method

officefileapi-devexpress-dot-pdf-dot-pdfpagefacade-655b39f8.md

latest3.7 KB
Original Source

PdfPageFacade.CreateXYZDestination() Method

Creates an XYZ destination. The coordinate of the document window’s top left corner and the zoom factor is retained from the previous view.

Namespace : DevExpress.Pdf

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

NuGet Package : DevExpress.Pdf.Core

Declaration

csharp
public PdfXYZDestination CreateXYZDestination()
vb
Public Function CreateXYZDestination As PdfXYZDestination

Returns

TypeDescription
PdfXYZDestination

The XYZ destination.

|

Remarks

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

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

    PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;

    // Create an XYZ destination that refers to the fifth page
    PdfXYZDestination destination =
       documentFacade.Pages[4].CreateXYZDestination();

    // Find a specific phrase
    string word = "Type 3 fonts";
    PdfTextSearchResults results = pdfDocumentProcessor.FindText(word);

    // If the phrase is found, obtain its bounding rectangle
    if (results.Status == PdfTextSearchStatus.Found)
    {
        PdfRectangle textRectangle = results.Rectangles[0].BoundingRectangle;

        // Access the first page properties
        PdfPageFacade pageFacade = documentFacade.Pages[0];

        // Create a link annotation associated with the bounding rectangle
        // and destination
        PdfLinkAnnotationFacade pdfLinkAnnotation =
           pageFacade.AddLinkAnnotation(textRectangle, destination);
        pdfLinkAnnotation.HighlightMode = PdfAnnotationHighlightingMode.Push;

        pdfDocumentProcessor.SaveDocument("out.pdf");
    }
}
vb
Using pdfDocumentProcessor As New PdfDocumentProcessor()
  ' Load a document
  pdfDocumentProcessor.LoadDocument("Demo.pdf")
  Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade

  ' Create an XYZ destination that refers to the fifth page
  Dim destination As PdfXYZDestination =
     documentFacade.Pages(4).CreateXYZDestination()

  ' Find the target phrase
  Dim word As String = "Type 3 fonts"
  Dim results As PdfTextSearchResults = pdfDocumentProcessor.FindText(word)

  ' If the phrase is found, obtain its rectangle
  If results.Status = PdfTextSearchStatus.Found Then
    Dim textRectangle As PdfRectangle = results.Rectangles(0).BoundingRectangle

    ' Access the first page properties
    Dim pageFacade As PdfPageFacade = documentFacade.Pages(0)

    ' Create a link annotation associated with the bounding rectangle
    ' and destination
    Dim pdfLinkAnnotation As PdfLinkAnnotationFacade =
      pageFacade.AddLinkAnnotation(textRectangle, destination)
    pdfLinkAnnotation.HighlightMode = PdfAnnotationHighlightingMode.Push

    pdfDocumentProcessor.SaveDocument("out.pdf")
  End If
End Using

See Also

PdfPageFacade Class

PdfPageFacade Members

DevExpress.Pdf Namespace