The code displayed below will guide you to install an VB.NET app to get selection points with PDF viewer UI application with PDF viewer SDK. ByteScout PDF Suite can get selection points with PDF viewer UI application with PDF viewer SDK. It can be applied from VB.NET. ByteScout PDF Suite is the set that includes 6 SDK products to work with PDF from generating rich PDF reports to extracting data from PDF documents and converting them to HTML. This bundle includes PDF (Generator) SDK, PDF Renderer SDK, PDF Extractor SDK, PDF to HTML SDK, PDF Viewer SDK and PDF Generator SDK for Javascript.
The following code snippet for ByteScout PDF Suite works best when you need to quickly get selection points with PDF viewer UI application with PDF viewer SDK in your VB.NET application. Follow the instructions from scratch to work and copy the VB.NET code. If you want to use these VB.NET sample examples in one or many applications then they can be used easily.
If you want to try other source code samples then the free trial version of ByteScout PDF Suite is available for download from our website. Just try other 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 Suite Home Page
Explore ByteScout PDF Suite Documentation
Explore Samples
Sign Up for ByteScout PDF Suite 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 Suite Home Page
Explore ByteScout PDF Suite Documentation
Explore Samples
Sign Up for ByteScout PDF Suite 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 Suite Home Page
Explore ByteScout PDF Suite Documentation
Explore Samples
Sign Up for ByteScout PDF Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
60 Day Free Trial or Visit ByteScout PDF Suite Home Page
Explore ByteScout PDF Suite Documentation
Explore Samples
Sign Up for ByteScout PDF Suite Online Training
Get Your API Key
Explore Web API Docs
Explore Web API Samples
also available as: