Protected Sub convertToPdfButton_Click(ByVal sender As Object, ByVal e As EventArgs)
    ' Create a HTML to PDF converter object with default settings
    Dim htmlToPdfConverter As 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 = "fvDh8eDx4fHg4P/h8eLg/+Dj/+jo6Og="

    ' 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

    Dim pdfDocument As Document = Nothing
    Try
        Dim htmlWithButton As String = htmlStringTextBox.Text
        Dim baseUrl As String = baseUrlTextBox.Text

        ' Convert a HTML string with a button to a PDF document object
        pdfDocument = htmlToPdfConverter.ConvertHtmlToPdfDocumentObject(htmlWithButton, baseUrl)

        ' Get the button location in PDF
        Dim buttonMapping As HtmlElementMapping = htmlToPdfConverter.HtmlElementsMappingOptions.HtmlElementsMappingResult.GetElementByMappingId("javascript_button")
        If buttonMapping IsNot Nothing Then
            Dim buttonPdfPage As PdfPage = buttonMapping.PdfRectangles(0).PdfPage
            Dim buttonRectangle As RectangleF = buttonMapping.PdfRectangles(0).Rectangle

            ' The font used for buttons text in PDF document
            Dim buttonTextFont As PdfFont = pdfDocument.AddFont(New Font("Times New Roman", 8, FontStyle.Regular, GraphicsUnit.Point))

            ' Create a PDF form button
            Dim pdfButton As PdfFormButton = pdfDocument.Form.AddButton(buttonPdfPage, buttonRectangle, "Execute Acrobat JavaScript", buttonTextFont)

            ' Set JavaScript action to be executed when the button is clicked
            Dim javaScript As String = Nothing
            If alertMessageRadioButton.Checked Then
                ' JavaScript to display an alert mesage 
                javaScript = String.Format("app.alert(""{0}"")", alertMessageTextBox.Text)
            ElseIf printDialogRadioButton.Checked Then
                ' JavaScript to open the print dialog
                javaScript = "print()"
            ElseIf zoomLevelRadioButton.Checked Then
                ' JavaScript to set an initial zoom level 
                javaScript = String.Format("zoom={0}", Integer.Parse(zoomLevelTextBox.Text))
            End If

            ' Set the JavaScript action
            pdfButton.Action = New PdfActionJavaScript(javaScript)
        End If

        ' Save the PDF document in a memory buffer
        Dim outPdfBuffer() As Byte = 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=Button_JavaScript_Actions.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 IsNot Nothing Then
            pdfDocument.Close()
        End If
    End Try
End Sub