EVO HTML to PDF Converter can set the location in a PDF page where to go when the generated PDF is opened in a PDF viewer using a PdfActionGoTo object which can be assigned to DocumentOpenActionAction property. An object of DocumentOpenAction type is exposed by the DocumentOpenAction property.
Code Sample - Go To a Location in a PDF Page When the Document is Opened
protected void convertToPdfButton_Click(object sender, EventArgs e) { // Create a HTML to PDF converter object with default settings HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter(); // Set license key received after purchase to use the converter in licensed mode // Leave it not set to use the converter in demo mode htmlToPdfConverter.LicenseKey = "4W9+bn19bn5ue2B+bn1/YH98YHd3d3c="; // Set an adddional delay in seconds to wait for JavaScript or AJAX calls after page load completed // Set this property to 0 if you don't need to wait for such asynchcronous operations to finish htmlToPdfConverter.ConversionDelay = 2; Document pdfDocument = null; try { // Convert a HTML page to a PDF document object pdfDocument = htmlToPdfConverter.ConvertUrlToPdfDocumentObject(urlTextBox.Text); int goToPageNumber = int.Parse(pageNumberTextBox.Text); if (goToPageNumber > pdfDocument.Pages.Count) { return; } // Get destination PDF page PdfPage goToPage = pdfDocument.Pages[goToPageNumber - 1]; // Get the destination point in PDF page float goToX = float.Parse(xLocationTextBox.Text); float goToY = float.Parse(yLocationTextBox.Text); PointF goToLocation = new PointF(goToX, goToY); // Get the destination view mode DestinationViewMode viewMode = SelectedViewMode(); // Create the destination in PDF document ExplicitDestination goToDestination = new ExplicitDestination(goToPage, goToLocation, viewMode); // Set the zoom level when the destination is displayed if (viewMode == DestinationViewMode.XYZ) goToDestination.ZoomPercentage = int.Parse(zoomLevelTextBox.Text); // Set the document Go To open action pdfDocument.OpenAction.Action = new PdfActionGoTo(goToDestination); // Save the PDF document in a memory buffer byte[] outPdfBuffer = pdfDocument.Save(); // Send the PDF as response to browser // Set response content type Response.AddHeader("Content-Type", "application/pdf"); // Instruct the browser to open the PDF file as an attachment or inline Response.AddHeader("Content-Disposition", String.Format("attachment; filename=Go_To_Page_Open_Action.pdf; size={0}", outPdfBuffer.Length.ToString())); // Write the PDF document buffer to HTTP response Response.BinaryWrite(outPdfBuffer); // End the HTTP response and stop the current page processing Response.End(); } finally { // Close the PDF document if (pdfDocument != null) pdfDocument.Close(); } }