SelectPdf for .NET - Control Page Breaks with Html to Pdf Converter - VB.NET / ASP.NET MVC Sample

This sample shows how to use SelectPdf html to pdf converter to convert a raw html code to pdf and also how to control the page breaks from the html code.

To insert a page break in pdf, the html code must have an element with the style page-break-before: always or page-break-after: always. Before or after that specific element, a page break will be inserted into the generated pdf document. The element can be anything (image, table, table row, div, text, etc).

To instruct a certain section from the content to remain on the same page in the generated pdf document, an element with the style page-break-inside: avoid must be used.

Html Code:


Base Url:


Sample Code VB.NET



Imports SelectPdf

Namespace Controllers
    Public Class PageBreaksController
        Inherits Controller

        ' GET: PageBreaks
        Public Function Index() As ActionResult
            ViewData.Add("PageBreaksValue", Helper.PageBreaksText())
            Return View()
        End Function

        <HttpPost>
        <ValidateInput(False)>
        Public Function SubmitAction(collection As FormCollection) As ActionResult
            ' read parameters
            Dim htmlString As String = collection("TxtHtmlCode")
            Dim baseUrl As String = collection("TxtBaseUrl")

            ' instantiate a html to pdf converter object
            Dim converter As New HtmlToPdf()

            converter.Options.MarginTop = 10
            converter.Options.MarginBottom = 10
            converter.Options.MarginLeft = 10
            converter.Options.MarginRight = 10

            ' create a new pdf document converting an url
            Dim doc As PdfDocument = converter.ConvertHtmlString(htmlString, baseUrl)

            ' save pdf document
            Dim pdf As Byte() = doc.Save()

            ' close pdf document
            doc.Close()

            ' return resulted pdf document
            Dim fileResult As FileResult = New FileContentResult(pdf, "application/pdf")
            fileResult.FileDownloadName = "Document.pdf"
            Return fileResult
        End Function
    End Class
End Namespace