ByteScout Premium Suite - VB.NET - Print pdf with pdf renderer sdk - ByteScout

ByteScout Premium Suite – VB.NET – Print pdf with pdf renderer sdk

  • Home
  • /
  • Articles
  • /
  • ByteScout Premium Suite – VB.NET – Print pdf with pdf renderer sdk

How to print pdf with pdf renderer sdk in VB.NET with ByteScout Premium Suite

Learn to print pdf with pdf renderer sdk in VB.NET

An easy to understand guide on how to print pdf with pdf renderer sdk in VB.NET with this source code sample. What is ByteScout Premium Suite? It is the set that includes 12 SDK products from ByteScout including tools and components for PDF, barcodes, spreadsheets, screen video recording. It can help you to print pdf with pdf renderer sdk in your VB.NET application.

The following code snippet for ByteScout Premium Suite works best when you need to quickly print pdf with pdf renderer sdk in your VB.NET application. This VB.NET sample code is all you need for your app. Just copy and paste the code, add references (if needs to) and you are all set! Complete and detailed tutorials and documentation are available along with installed ByteScout Premium Suite if you’d like to learn more about the topic and the details of the API.

All these programming tutorials along with source code samples and ByteScout free trial version are available for download from our website.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

Form1.Designer.vb
      
Partial Class Form1 ''' <summary> ''' Required designer variable. ''' </summary> Private components As System.ComponentModel.IContainer = Nothing ''' <summary> ''' Clean up any resources being used. ''' </summary> ''' <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> Protected Overrides Sub Dispose(disposing As Boolean) If disposing AndAlso (components IsNot Nothing) Then components.Dispose() End If MyBase.Dispose(disposing) End Sub #Region "Windows Form Designer generated code" ''' <summary> ''' Required method for Designer support - do not modify ''' the contents of this method with the code editor. ''' </summary> Private Sub InitializeComponent() Dim resources As New System.ComponentModel.ComponentResourceManager(GetType(Form1)) Me.printDocument1 = New System.Drawing.Printing.PrintDocument() Me.printPreviewDialog1 = New System.Windows.Forms.PrintPreviewDialog() Me.pageSetupDialog1 = New System.Windows.Forms.PageSetupDialog() Me.printDialog1 = New System.Windows.Forms.PrintDialog() Me.buttonPageSetup = New System.Windows.Forms.Button() Me.buttonPrintPreview = New System.Windows.Forms.Button() Me.buttonPrint = New System.Windows.Forms.Button() Me.SuspendLayout() ' ' printDocument1 ' AddHandler Me.printDocument1.PrintPage, New System.Drawing.Printing.PrintPageEventHandler(AddressOf Me.printDocument1_PrintPage) ' ' printPreviewDialog1 ' Me.printPreviewDialog1.AutoScrollMargin = New System.Drawing.Size(0, 0) Me.printPreviewDialog1.AutoScrollMinSize = New System.Drawing.Size(0, 0) Me.printPreviewDialog1.ClientSize = New System.Drawing.Size(400, 300) Me.printPreviewDialog1.Document = Me.printDocument1 Me.printPreviewDialog1.Enabled = True Me.printPreviewDialog1.Icon = DirectCast(resources.GetObject("printPreviewDialog1.Icon"), System.Drawing.Icon) Me.printPreviewDialog1.Name = "printPreviewDialog1" Me.printPreviewDialog1.UseAntiAlias = True Me.printPreviewDialog1.Visible = False ' ' pageSetupDialog1 ' Me.pageSetupDialog1.Document = Me.printDocument1 ' ' printDialog1 ' Me.printDialog1.Document = Me.printDocument1 Me.printDialog1.UseEXDialog = True ' ' buttonPageSetup ' Me.buttonPageSetup.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.buttonPageSetup.Location = New System.Drawing.Point(12, 12) Me.buttonPageSetup.Name = "buttonPageSetup" Me.buttonPageSetup.Size = New System.Drawing.Size(253, 41) Me.buttonPageSetup.TabIndex = 0 Me.buttonPageSetup.Text = "Page Setup" Me.buttonPageSetup.UseVisualStyleBackColor = True AddHandler Me.buttonPageSetup.Click, New System.EventHandler(AddressOf Me.buttonPageSetup_Click) ' ' buttonPrintPreview ' Me.buttonPrintPreview.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.buttonPrintPreview.Location = New System.Drawing.Point(12, 59) Me.buttonPrintPreview.Name = "buttonPrintPreview" Me.buttonPrintPreview.Size = New System.Drawing.Size(253, 41) Me.buttonPrintPreview.TabIndex = 1 Me.buttonPrintPreview.Text = "Print Preview" Me.buttonPrintPreview.UseVisualStyleBackColor = True AddHandler Me.buttonPrintPreview.Click, New System.EventHandler(AddressOf Me.buttonPrintPreview_Click) ' ' buttonPrint ' Me.buttonPrint.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.buttonPrint.Location = New System.Drawing.Point(12, 106) Me.buttonPrint.Name = "buttonPrint" Me.buttonPrint.Size = New System.Drawing.Size(253, 41) Me.buttonPrint.TabIndex = 2 Me.buttonPrint.Text = "Print" Me.buttonPrint.UseVisualStyleBackColor = True AddHandler Me.buttonPrint.Click, New System.EventHandler(AddressOf Me.buttonPrint_Click) ' ' Form1 ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6F, 13F) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(277, 161) Me.Controls.Add(Me.buttonPrint) Me.Controls.Add(Me.buttonPrintPreview) Me.Controls.Add(Me.buttonPageSetup) Me.Name = "Form1" Me.Text = "Print PDF" AddHandler Me.Load, New System.EventHandler(AddressOf Me.Form1_Load) Me.ResumeLayout(False) End Sub #End Region Private printDocument1 As System.Drawing.Printing.PrintDocument Private printPreviewDialog1 As System.Windows.Forms.PrintPreviewDialog Private pageSetupDialog1 As System.Windows.Forms.PageSetupDialog Private printDialog1 As System.Windows.Forms.PrintDialog Private buttonPageSetup As System.Windows.Forms.Button Private buttonPrintPreview As System.Windows.Forms.Button Private buttonPrint As System.Windows.Forms.Button End Class

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Premium Suite Home Page

Explore ByteScout Premium Suite Documentation

Explore Samples

Sign Up for ByteScout Premium Suite Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Form1.vb
      
Imports System.Drawing Imports System.Drawing.Imaging Imports System.Windows.Forms Imports Bytescout.PDFRenderer Public Partial Class Form1 Inherits Form Private _document As String = "multipage.pdf" Private _rasterRenderer As RasterRenderer = Nothing Private _page As Integer = 0 Public Sub New() InitializeComponent() ' Create an instance of Bytescout.PDFRenderer.RasterRenderer object and register it. _rasterRenderer = New RasterRenderer() _rasterRenderer.RegistrationName = "demo" _rasterRenderer.RegistrationKey = "demo" End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Cursor = Cursors.WaitCursor Try ' Load PDF document _rasterRenderer.LoadDocumentFromFile(_document) Catch exception As Exception MessageBox.Show("Could not open PDF document." & vbLf & vbLf & exception.Message) Finally Cursor = Cursors.[Default] End Try End Sub Private Sub buttonPageSetup_Click(ByVal sender As Object, ByVal e As EventArgs) ' Set landscape orientation if needed Dim pageRectangle As RectangleF = _rasterRenderer.GetPageRectangle(0) If (pageRectangle.Width > pageRectangle.Height) Then pageSetupDialog1.PageSettings.Landscape = True End If pageSetupDialog1.ShowDialog() End Sub Private Sub buttonPrintPreview_Click(sender As Object, e As EventArgs) _page = 0 printPreviewDialog1.Width = 800 printPreviewDialog1.Height = 600 printPreviewDialog1.ShowDialog() End Sub Private Sub buttonPrint_Click(sender As Object, e As EventArgs) If printDialog1.ShowDialog() = DialogResult.OK Then printDocument1.Print() End If End Sub Private Sub printDocument1_PrintPage(sender As Object, e As System.Drawing.Printing.PrintPageEventArgs) Cursor = Cursors.WaitCursor Try ' For the best quality set the rendering resolution equal to the printer resolution Dim renderingResolution As Single = e.PageSettings.PrinterResolution.X ' Render page to image Using image As Image = _rasterRenderer.GetImage(_page, renderingResolution) ' Fit image into the print rectangle keeping the aspect ratio Dim printRect As Rectangle = e.MarginBounds Dim ratio As Single = printRect.Width / CSng(image.Width) Dim width As Integer = printRect.Width Dim height As Integer = CInt(Math.Round(image.Height * ratio)) If height > printRect.Height Then ratio = printRect.Height / CSng(image.Height) width = CInt(Math.Round(image.Width * ratio)) height = printRect.Height End If ' Draw image on device e.Graphics.DrawImage(image, New Rectangle(printRect.X, printRect.Y, width, height), New Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel) End Using If _page < _rasterRenderer.GetPageCount() - 1 Then _page += 1 e.HasMorePages = True End If Catch exception As Exception MessageBox.Show(exception.Message) Finally Cursor = Cursors.Default End Try End Sub End Class

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Premium Suite Home Page

Explore ByteScout Premium Suite Documentation

Explore Samples

Sign Up for ByteScout Premium Suite Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Program.vb
      
Imports System.Collections.Generic Imports System.Windows.Forms NotInheritable Class Program Private Sub New() End Sub ''' <summary> ''' The main entry point for the application. ''' </summary> <STAThread> _ Friend Shared Sub Main() Application.EnableVisualStyles() Application.SetCompatibleTextRenderingDefault(False) Application.Run(New Form1()) End Sub End Class

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Premium Suite Home Page

Explore ByteScout Premium Suite Documentation

Explore Samples

Sign Up for ByteScout Premium Suite Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

VIDEO

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout Premium Suite Home Page

Explore ByteScout Premium Suite Documentation

Explore Samples

Sign Up for ByteScout Premium Suite Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Tutorials:

prev
next