Image Viewer

by Ruben 3/24/2008 4:11:00 PM

Pegasus Imaging is a great .Net component used in visual studio development environment. Developers can build their own application with Image viewing control. Data conversion today are more on document images, data entry application should be required to incorporate the image manipulation into textbox control for ease of use like navigation image zoom-in, zoom-out, next or previous page if multiple images. See sample screenshot below of my existing data entry program known as S2xDE:

Real Estate Solution Data Entry Program


Option Explicit On

Public Class frmImageViewer
  Private Sub frmImageViewer_Load(ByVal sender As System.Object, _
       ByVal e As System.EventArgs) Handles MyBase.Load
     ScrollX = 30
     ScrollY = 30
     ZoomOut = 0.9
     ZoomIn = 1.1

     PicImagXpress1.ZoomToFit(PegasusImaging.WinForms.ImagXpress7.enumZoomFit.ZOOMFIT_WIDTH)

     Me.Top = 0
     Me.Left = 333

     If gsDatabase = "RES-MAP" Or gsDatabase = "RES-EFX" Then PictureBox1.Visible = True

     PicImagXpress1.ToolSet(PegasusImaging.WinForms.ImagXpress7.enumIXTool.TOOL_Hand, _
     PegasusImaging.WinForms.ImagXpress7.enumIXMouseButton.IXMOUSEBUTTON_Left, 0)
  End Sub

  Public Sub TextBox1_KeyDown(ByVal sender As Object, _
       ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
     Select Case e.KeyCode
        Case System.Windows.Forms.Keys.Up
           PicImagXpress1.ScrollY = PicImagXpress1.ScrollY - ScrollX
        Case System.Windows.Forms.Keys.Down
           PicImagXpress1.ScrollY = PicImagXpress1.ScrollY + ScrollX
        Case System.Windows.Forms.Keys.Left
           PicImagXpress1.ScrollX = PicImagXpress1.ScrollX - ScrollY
        Case System.Windows.Forms.Keys.Right
           PicImagXpress1.ScrollX = PicImagXpress1.ScrollX + ScrollY
        Case System.Windows.Forms.Keys.Add
           PicImagXpress1.Zoom(PicImagXpress1.IPZoomF * ZoomIn)
        Case System.Windows.Forms.Keys.Subtract
           PicImagXpress1.Zoom(PicImagXpress1.IPZoomF * ZoomOut)
        Case System.Windows.Forms.Keys.PageDown
           If PicImagXpress1.Pages <> PicImagXpress1.PageNbr Then
              PicImagXpress1.PageNbr = PicImagXpress1.PageNbr + 1
              PicImagXpress1.FileName = ImageFile
           End If
        Case System.Windows.Forms.Keys.PageUp
           If PicImagXpress1.PageNbr <> 1 Then
              PicImagXpress1.PageNbr = PicImagXpress1.PageNbr - 1
              PicImagXpress1.FileName = ImageFile
           End If
        Case System.Windows.Forms.Keys.End
           PicImagXpress1.PageNbr = PicImagXpress1.Pages
           PicImagXpress1.FileName = ImageFile
        Case System.Windows.Forms.Keys.Home
           PicImagXpress1.PageNbr = 1
           PicImagXpress1.FileName = ImageFile
        Case System.Windows.Forms.Keys.R
           PicImagXpress1.Rotate(-90)
        Case System.Windows.Forms.Keys.N
           PicImagXpress1.Negate()
     End Select
     ToolStripStatusPage.Text = "Image Page: " & PicImagXpress1.PageNbr & _
           " of " & PicImagXpress1.Pages
  End Sub

  Private Sub PictureBox1_MouseMove(ByVal sender As Object, _
       ByVal e As ystem.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
     Dim nxtY As Long
     If e.Button = Windows.Forms.MouseButtons.Left Then
        nxtY = (PictureBox1.Top + e.Y)
        If nxtY < 10 Then nxtY = 10
        If nxtY >= PicImagXpress1.Height Then nxtY = PicImagXpress1.Height
        PictureBox1.Top = nxtY
     End If
  End Sub

  Public Sub MarkerDown()
     With PictureBox1
        If .Top + 15 > PicImagXpress1.Height Then
           .Top = PicImagXpress1.Height - 10
        Else
           .Top = .Top + 15
        End If
     End With
  End Sub

  Public Sub MarkerUp()
     With PictureBox1
        If .Top - 15 < 10 Then
           .Top = 10
        Else
           .Top = .Top - 15
        End If
     End With
  End Sub

  Private Sub TOOLToolStripMenuItem_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles TOOLToolStripMenuItem.Click
     PicImagXpress1.ToolSet(PegasusImaging.WinForms.ImagXpress7.enumIXTool.TOOL_Hand, _
     PegasusImaging.WinForms.ImagXpress7.enumIXMouseButton.IXMOUSEBUTTON_Left, 0)
  End Sub

  Public Sub MagnifierToolToolStripMenuItem_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles MagnifierToolToolStripMenuItem.Click
     PicImagXpress1.ToolSetAttribute(PegasusImaging.WinForms.ImagXpress7.enumIXTool.TOOL_Mag, _
     PegasusImaging.WinForms.ImagXpress7.enumIXToolAttr.TOOLATTR_MagWidth, 500)
     PicImagXpress1.ToolSet(PegasusImaging.WinForms.ImagXpress7.enumIXTool.TOOL_Mag, _
     PegasusImaging.WinForms.ImagXpress7.enumIXMouseButton.IXMOUSEBUTTON_Left, 0)
  End Sub

  Private Sub CopyImageToolStripMenuItem_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles CopyImageToolStripMenuItem.Click
     Dim Folder As New FolderBrowserDialog
     Dim sPath As String

     Folder.ShowDialog()
     sPath = Folder.SelectedPath.ToString()

     If Len(sPath) <> 0 Then
        FileCopy(ImageFile, sPath & "\" & Strings.Right(ImageFile, _
        Strings.Len(ImageFile) Strings.InStrRev(ImageFile, "\")))
        MessageBox.Show("Done..., Image located at '" & sPath & "\" & _
        Strings.Right(ImageFile, Strings.Len(ImageFile) - Strings.InStrRev(ImageFile, "\")) & _
        "'.", "Copy Image", MessageBoxButtons.OK, MessageBoxIcon.Information)
     End If
  End Sub

  Private Sub PicImagXpress1_MouseUp(ByVal sender As Object, _
      ByVal e As System.Windows.Forms.MouseEventArgs) Handles PicImagXpress1.MouseUp
     TextBox1.Focus()
  End Sub
End Class

FREE PDF BOOK DOWNLOAD

Related posts

Add comment


(Will show your Gravatar icon)  

  Country flag

[b][/b] - [i][/i] - [u][/u]- [quote][/quote]



Live preview

9/7/2008 5:25:48 AM

Recieved Updates



Enter your email address:

Delivered by FeedBurner

About the author

Name of author RUBEN CORRAL
System Developer in outSourcing company for almost 8 years. I built this blogs just for fun, sharing idea's, contribute a piece of code, especially to newbie programmers.

E-mail me Send mail

Calendar

<<  September 2008  >>
MoTuWeThFrSaSu
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

View posts in large calendar

Disclaimer

The opinions expressed herein are my own personal point of view. Sample source codes are free to modify or enhance for your own satisfaction.

Sign in

All brand names, logos and trademarks in this site are property of their respective owners.