    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;

        // Html Viewer Options

        // Set HTML Viewer width in pixels which is the equivalent in converter of the browser window width
        // This is a preferred width of the browser but the actual HTML content width can be larger in case the HTML page
        // cannot be entirely displayed in the given viewer width
        // This property gives the size of the HTML content which can be further scaled to fit the PDF page based on selected options
        // The HTML content size is in pixels and the PDF page size is in points (1 point = 1/72 inches)
        // The converter is using a 96 DPI resolution to transform pixels to points with the following formula: Points = Pixels/96 * 72
        htmlToPdfConverter.HtmlViewerWidth = int.Parse(htmlViewerWidthTextBox.Text);

        // Set HTML viewer height in pixels to convert the top part of a HTML page
        // Leave it not set to convert the entire HTML
        if (htmlViewerHeightTextBox.Text.Length > 0)
            htmlToPdfConverter.HtmlViewerHeight = int.Parse(htmlViewerHeightTextBox.Text);

        // Set the HTML content clipping option to force the HTML content width to be exactly HtmlViewerWidth pixels
        // If this option is false then the actual HTML content width can be larger than HtmlViewerWidth pixels in case the HTML page
        // cannot be entirely displayed in the given viewer width
        // By default this option is false and the HTML content is not clipped
        htmlToPdfConverter.ClipHtmlView = clipContentCheckBox.Checked;

        // Set the HTML content zoom percentage similar to zoom level in a browser
        htmlToPdfConverter.HtmlViewerZoom = int.Parse(htmlViewerZoomTextBox.Text);

        // PDF Page Options

        // Set PDF page size which can be a predefined size like A4 or a custom size in points
        // Leave it not set to have a default A4 PDF page
        htmlToPdfConverter.PdfDocumentOptions.PdfPageSize = SelectedPdfPageSize();

        // Set PDF page orientation to Portrait or Landscape
        // Leave it not set to have a default Portrait orientation for PDF page
        htmlToPdfConverter.PdfDocumentOptions.PdfPageOrientation = SelectedPdfPageOrientation();

        // Set PDF page margins in points or leave them not set to have a PDF page without margins
        htmlToPdfConverter.PdfDocumentOptions.LeftMargin = float.Parse(leftMarginTextBox.Text);
        htmlToPdfConverter.PdfDocumentOptions.RightMargin = float.Parse(rightMarginTextBox.Text);
        htmlToPdfConverter.PdfDocumentOptions.TopMargin = float.Parse(topMarginTextBox.Text);
        htmlToPdfConverter.PdfDocumentOptions.BottomMargin = float.Parse(bottomMarginTextBox.Text);

        // HTML Content Destination and Spacing Options

        // Set HTML content destination in PDF page
        if (xLocationTextBox.Text.Length > 0)
            htmlToPdfConverter.PdfDocumentOptions.X = float.Parse(xLocationTextBox.Text);
        if (yLocationTextBox.Text.Length > 0)
            htmlToPdfConverter.PdfDocumentOptions.Y = float.Parse(yLocationTextBox.Text);
        if (contentWidthTextBox.Text.Length > 0)
            htmlToPdfConverter.PdfDocumentOptions.Width = float.Parse(contentWidthTextBox.Text);
        if (contentHeightTextBox.Text.Length > 0)
            htmlToPdfConverter.PdfDocumentOptions.Height = float.Parse(contentHeightTextBox.Text);

        // Set HTML content top and bottom spacing or leave them not set to have no spacing for the HTML content
        htmlToPdfConverter.PdfDocumentOptions.TopSpacing = float.Parse(topSpacingTextBox.Text);
        htmlToPdfConverter.PdfDocumentOptions.BottomSpacing = float.Parse(bottomSpacingTextBox.Text);

        // Scaling Options

        // Use this option to fit the HTML content width in PDF page width
        // By default this property is true and the HTML content can be resized to fit the PDF page width
        htmlToPdfConverter.PdfDocumentOptions.FitWidth = fitWidthCheckBox.Checked;

        // Use this option to enable the HTML content stretching when its width is smaller than PDF page width
        // This property has effect only when FitWidth option is true
        // By default this property is false and the HTML content is not stretched
        htmlToPdfConverter.PdfDocumentOptions.StretchToFit = stretchCheckBox.Checked;

        // Use this option to automatically dimension the PDF page to display the HTML content unscaled
        // This property has effect only when the FitWidth property is false
        // By default this property is true and the PDF page is automatically dimensioned when FitWidth is false
        htmlToPdfConverter.PdfDocumentOptions.AutoSizePdfPage = autoSizeCheckBox.Checked;

        // Use this option to fit the HTML content height in PDF page height
        // If both FitWidth and FitHeight are true then the HTML content will resized if necessary to fit both width and height
        // preserving the aspect ratio at the same time
        // By default this property is false and the HTML content is not resized to fit the PDF page height
        htmlToPdfConverter.PdfDocumentOptions.FitHeight = fitHeightCheckBox.Checked;

        // Use this option to render the whole HTML content into a single PDF page
        // The PDF page size is limited to 14400 points
        // By default this property is false
        htmlToPdfConverter.PdfDocumentOptions.SinglePage = singlePageCheckBox.Checked;

        string url = urlTextBox.Text;

        // Convert the HTML page to a PDF document using the scaling options
        byte[] outPdfBuffer = htmlToPdfConverter.ConvertUrl(url);

        // 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=HTML_Content_Scaling.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();
    }