The coding tutorials are designed to help you test the features without need to write your own code. ByteScout PDF Viewer SDK is the component that helps in adding pdf viewer into your desktop WinForms application. User may select multiple areas with mouse, can use keyboard shortcuts and zoom in or zoom out and change scaling. You may read coordinates, handle custom painting code and retrieve text inside selection area. It can get selection points with PDF viewer UI application in VB.NET.
This rich sample source code in VB.NET for ByteScout PDF Viewer SDK includes the number of functions and options you should do calling the API to get selection points with PDF viewer UI application. Follow the instructions from the scratch to work and copy the VB.NET code. Enjoy writing a code with ready-to-use sample codes in VB.NET.
You can download free trial version of ByteScout PDF Viewer SDK from our website to see and try many others source code samples for VB.NET.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
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()
Me.tsbOpen = New System.Windows.Forms.ToolStripButton()
Me.toolStrip1 = New System.Windows.Forms.ToolStrip()
Me.pdfViewerControl1 = New Bytescout.PDFViewer.PDFViewerControl()
Me.txtSelectionPixel = New System.Windows.Forms.TextBox()
Me.txtSelectionPDFUnit = New System.Windows.Forms.TextBox()
Me.label2 = New System.Windows.Forms.Label()
Me.label1 = New System.Windows.Forms.Label()
Me.btnGetSelectionPoints = New System.Windows.Forms.Button()
Me.toolStrip1.SuspendLayout()
Me.SuspendLayout()
'
'tsbOpen
'
Me.tsbOpen.Image = Global.Sample_UI_Application.My.Resources.Resources.folder_page
Me.tsbOpen.ImageTransparentColor = System.Drawing.Color.Magenta
Me.tsbOpen.Name = "tsbOpen"
Me.tsbOpen.Size = New System.Drawing.Size(99, 24)
Me.tsbOpen.Text = "&Open PDF"
'
'toolStrip1
'
Me.toolStrip1.ImageScalingSize = New System.Drawing.Size(20, 20)
Me.toolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbOpen})
Me.toolStrip1.Location = New System.Drawing.Point(0, 0)
Me.toolStrip1.Name = "toolStrip1"
Me.toolStrip1.Size = New System.Drawing.Size(1240, 27)
Me.toolStrip1.TabIndex = 1
Me.toolStrip1.Text = "toolStrip1"
'
'pdfViewerControl1
'
Me.pdfViewerControl1.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.pdfViewerControl1.BackColor = System.Drawing.SystemColors.ButtonShadow
Me.pdfViewerControl1.Location = New System.Drawing.Point(0, 129)
Me.pdfViewerControl1.Margin = New System.Windows.Forms.Padding(4)
Me.pdfViewerControl1.MouseMode = Bytescout.PDFViewer.MouseMode.Selection
Me.pdfViewerControl1.Name = "pdfViewerControl1"
Me.pdfViewerControl1.RegistrationKey = Nothing
Me.pdfViewerControl1.RegistrationName = Nothing
Me.pdfViewerControl1.ResetRotationOnPageChange = False
Me.pdfViewerControl1.Scale = 100
Me.pdfViewerControl1.SelectionColor = System.Drawing.Color.Red
Me.pdfViewerControl1.ShowImageObjects = True
Me.pdfViewerControl1.ShowTextObjects = True
Me.pdfViewerControl1.ShowVectorObjects = True
Me.pdfViewerControl1.Size = New System.Drawing.Size(1240, 532)
Me.pdfViewerControl1.TabIndex = 0
'
'txtSelectionPixel
'
Me.txtSelectionPixel.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.2!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtSelectionPixel.Location = New System.Drawing.Point(470, 84)
Me.txtSelectionPixel.Multiline = True
Me.txtSelectionPixel.Name = "txtSelectionPixel"
Me.txtSelectionPixel.ReadOnly = True
Me.txtSelectionPixel.Size = New System.Drawing.Size(761, 25)
Me.txtSelectionPixel.TabIndex = 11
'
'txtSelectionPDFUnit
'
Me.txtSelectionPDFUnit.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.2!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtSelectionPDFUnit.Location = New System.Drawing.Point(470, 40)
Me.txtSelectionPDFUnit.Multiline = True
Me.txtSelectionPDFUnit.Name = "txtSelectionPDFUnit"
Me.txtSelectionPDFUnit.ReadOnly = True
Me.txtSelectionPDFUnit.Size = New System.Drawing.Size(761, 25)
Me.txtSelectionPDFUnit.TabIndex = 10
'
'label2
'
Me.label2.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.label2.Location = New System.Drawing.Point(187, 84)
Me.label2.Name = "label2"
Me.label2.RightToLeft = System.Windows.Forms.RightToLeft.Yes
Me.label2.Size = New System.Drawing.Size(277, 25)
Me.label2.TabIndex = 9
Me.label2.Text = "Selection in Pixels"
'
'label1
'
Me.label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.label1.Location = New System.Drawing.Point(187, 40)
Me.label1.Name = "label1"
Me.label1.RightToLeft = System.Windows.Forms.RightToLeft.Yes
Me.label1.Size = New System.Drawing.Size(277, 25)
Me.label1.TabIndex = 8
Me.label1.Text = "Selection in PDF Units"
'
'btnGetSelectionPoints
'
Me.btnGetSelectionPoints.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnGetSelectionPoints.Location = New System.Drawing.Point(9, 40)
Me.btnGetSelectionPoints.Name = "btnGetSelectionPoints"
Me.btnGetSelectionPoints.Size = New System.Drawing.Size(172, 69)
Me.btnGetSelectionPoints.TabIndex = 7
Me.btnGetSelectionPoints.Text = "Get Selection Points"
Me.btnGetSelectionPoints.UseVisualStyleBackColor = True
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(8.0!, 16.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1240, 663)
Me.Controls.Add(Me.txtSelectionPixel)
Me.Controls.Add(Me.txtSelectionPDFUnit)
Me.Controls.Add(Me.label2)
Me.Controls.Add(Me.label1)
Me.Controls.Add(Me.btnGetSelectionPoints)
Me.Controls.Add(Me.pdfViewerControl1)
Me.Controls.Add(Me.toolStrip1)
Me.Margin = New System.Windows.Forms.Padding(4)
Me.Name = "Form1"
Me.Text = "Form1"
Me.toolStrip1.ResumeLayout(False)
Me.toolStrip1.PerformLayout()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Private WithEvents tsbOpen As Windows.Forms.ToolStripButton
Private WithEvents toolStrip1 As Windows.Forms.ToolStrip
Private WithEvents pdfViewerControl1 As Bytescout.PDFViewer.PDFViewerControl
Private WithEvents txtSelectionPixel As Windows.Forms.TextBox
Private WithEvents txtSelectionPDFUnit As Windows.Forms.TextBox
Private WithEvents label2 As Windows.Forms.Label
Private WithEvents label1 As Windows.Forms.Label
Private WithEvents btnGetSelectionPoints As Windows.Forms.Button
#End Region
End Class
60 Day Free Trial or Visit ByteScout PDF Viewer SDK Home Page
Explore ByteScout PDF Viewer SDK Documentation
Explore Samples
Sign Up for ByteScout PDF Viewer SDK Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
Imports System.Drawing
Imports System.Windows.Forms
Partial Public Class Form1
Inherits Form
Public Sub New()
InitializeComponent()
' Assign default document
pdfViewerControl1.InputFile = "sample.pdf"
' Initially set selection
pdfViewerControl1.Selection = New Rectangle() {New Rectangle(20, 20, 100, 100)}
' Get Selection Information
GetSelectionInformation()
End Sub
Private Sub tsbOpen_Click(ByVal sender As Object, ByVal e As EventArgs) Handles tsbOpen.Click
Using openFileDialog As New OpenFileDialog()
openFileDialog.Title = "Open PDF Document"
openFileDialog.Filter = "PDF Files (*.pdf)|*.pdf|All Files|*.*"
If openFileDialog.ShowDialog() = DialogResult.OK Then
Me.Text = openFileDialog.FileName
Cursor = Cursors.WaitCursor
Try
pdfViewerControl1.InputFile = openFileDialog.FileName
Catch exception As Exception
MessageBox.Show(exception.Message)
Finally
Cursor = Cursors.[Default]
End Try
End If
End Using
End Sub
Private Sub btnGetSelectionPoints_Click(sender As Object, e As EventArgs) Handles btnGetSelectionPoints.Click
GetSelectionInformation()
End Sub
Private Sub GetSelectionInformation()
If pdfViewerControl1.SelectionInPoints.Length > 0 Then
' If need to get selection in PDF format then use .SelectionInPoints that returns coordinates in PDF points.
' PDF points can be used with other SDK to extract text, draw on pdf, add text, images etc.
' These PDF points coordinates are staying the same with any rendering resolution for PDF because resolution affects only how pdf Is converted into displaying image.
Dim selectionInPoints As RectangleF = pdfViewerControl1.SelectionInPoints(0)
txtSelectionPDFUnit.Text = String.Format("Top={0}, Left={1}, Bottom={2}, Right={3}, Width={4}, Height={5}",
selectionInPoints.Top,
selectionInPoints.Left,
selectionInPoints.Bottom,
selectionInPoints.Right,
selectionInPoints.Width,
selectionInPoints.Height)
' If you need to draw on screen on the control then please use .Selection property to get coordinates.
Dim selectionInPixels As RectangleF = pdfViewerControl1.Selection(0)
txtSelectionPixel.Text = String.Format("Top={0}, Left={1}, Bottom={2}, Right={3}, Width={4}, Height={5}",
selectionInPixels.Top.ToString(),
selectionInPixels.Left.ToString(),
selectionInPixels.Bottom.ToString(),
selectionInPixels.Right.ToString(),
selectionInPixels.Width,
selectionInPixels.Height)
Else
MessageBox.Show("Selection not available.")
End If
End Sub
End Class
60 Day Free Trial or Visit ByteScout PDF Viewer SDK Home Page
Explore ByteScout PDF Viewer SDK Documentation
Explore Samples
Sign Up for ByteScout PDF Viewer SDK Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
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
60 Day Free Trial or Visit ByteScout PDF Viewer SDK Home Page
Explore ByteScout PDF Viewer SDK Documentation
Explore Samples
Sign Up for ByteScout PDF Viewer SDK Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
60 Day Free Trial or Visit ByteScout PDF Viewer SDK Home Page
Explore ByteScout PDF Viewer SDK Documentation
Explore Samples
Sign Up for ByteScout PDF Viewer SDK Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples