Hi, can anybody explain how to do this in this code-snippets I got from the page vb-power.net? Imports System.ComponentModel
Public Enum PDFLayoutMode
DontCare ' Layout laut Dokumentvorgabe
SinglePage ' einzelne Seite
OneColumn ' fortlaufende Seite
TwoColumnLeft ' fortlaufende Doppelseiten , ungerade Seiten links
TwoColumnRight ' fortlaufende Doppelseiten , ungerade Seiten rechts
End Enum
Public Enum PDFPageMode
none ' Default-Ansicht
bookmarks ' Ansicht Lesezeichen
thumbs ' Ansicht Miniaturansicht
End Enum
Public Enum PDFViewMode
Fit ' Komplette Seite passt vollständig ins bereitgestellte Objekt
FitV ' Seitenhöhe (Vertikale) passt vollständig ins Objekt
FitH ' Seitenbreite (Horizontale) passt vollständig ins Objekt
FitB ' Dokumentrahmen ("Bounding Box") passt vollständig ins Objekt
FitBV ' Dokumentrahmenhöhe (Vertikale) passt vollständig ins Objekt
FITBH ' Dokumentrahmenbreite (Horizontale) passt vollständig ins Objekt
End Enum
Public Class PDFView
Inherits UserControl
Private m_PDFHost As PDFHost
Private m_isInitialized As Boolean = False
Private m_ShowToolBar As Boolean = True
Private m_ShowScrollBars As Boolean = True
Private m_LayoutMode As PDFLayoutMode = PDFLayoutMode.DontCare
Private m_PageMode As PDFPageMode = PDFPageMode.none
Private m_ViewMode As PDFViewMode = PDFViewMode.Fit
#Region "Host Helper Class"
''' <summary>
''' Helper Class
''' </summary>
''' <remarks>
''' Diese private Klasse hostet das Acrobat ActiveX Control,
''' so dass es in das UserControl eingefügt werden kann.
''' </remarks>
Private Class PDFHost
Inherits AxHost
''' <summary>
''' Initialisiert den Host
''' </summary>
Public Sub New(ByVal sCLSID As String)
MyBase.New(sCLSID)
End Sub
''' <summary>
''' Gibt ein Objekt-Verweis auf das ActiveX Control zurück
''' </summary>
Public ReadOnly Property Viewer() As Object
Get
Try
Return Me.GetOcx
Catch ex As Exception
Return Nothing
End Try
End Get
End Property
''' <summary>
''' Gibt sämtliche von der Componente verwendeten Ressourcen frei.
''' </summary>
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If Me.Viewer IsNot Nothing Then
Me.Viewer.Dipose()
End If
MyBase.Dispose(disposing)
End Sub
End Class
#End Region
#Region "Initialisierungen"
''' <summary>
''' Initialisiert das UserControl
''' </summary>
Public Sub New()
MyBase.New()
Me.InitializeComponent()
End Sub
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If m_isInitialized Then
m_PDFHost.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
''' <summary>
''' Initialisiert die Komponente.
''' </summary>
''' <remarks>
''' Ãœber Late Binding wird versucht, eine Instanz des Acrobat Readers
''' zu erzeugen. Auf dem Zielsystem muss der Reader in der Version 7
''' oder höher installiert sein. Ist dies nicht der Fall, wird eine
''' Fehlermeldung ausgegeben.
''' </remarks>
Private Sub InitializeComponent()
Dim t As Type = Type.GetTypeFromProgID("AcroPDF.PDF")
If t IsNot Nothing Then
m_PDFHost = New PDFHost(t.GUID.ToString)
DirectCast((m_PDFHost), ISupportInitialize).BeginInit()
SuspendLayout()
m_PDFHost.TabIndex = 0
m_PDFHost.Visible = True
m_PDFHost.Name = "PDFHost"
m_PDFHost.Dock = DockStyle.Fill
Controls.Add(m_PDFHost)
DirectCast((m_PDFHost), ISupportInitialize).EndInit()
ResumeLayout(False)
PerformLayout()
m_isInitialized = True
Else
m_isInitialized = False
MessageBox.Show("Der Acrobat Reader Version 7 oder höher konnte nicht initialisiert werden." _
& vbCrLf & "Bitte installieren Sie den Acrobat Reader in der Version 7 oder höher." _
, "Überprüfung Acrobat Reader", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
End Sub
#End Region
#Region "Properties"
''' <summary>
''' Die Eigenschaft liefert True zurück, wenn der Acrobat Reader
''' initialisiert wurde, anderenfalls False.
''' </summary>
<Browsable(False)> _
Public ReadOnly Property isInitialized() As Boolean
Get
Return m_isInitialized
End Get
End Property
''' <summary>
''' Legt den Layout Modus für das PDF-Dokument fest, oder liest diese aus.
''' </summary>
<Description("Legt den Layout Modus für das PDF-Dokument fest, oder liest diese aus."), _
Category("Darstellung"), _
DefaultValue(GetType(PDFLayoutMode), "DontCare")> _
Public Property LayoutMode() As PDFLayoutMode
Get
Return m_LayoutMode
End Get
Set(ByVal value As PDFLayoutMode)
m_LayoutMode = value
Try
m_PDFHost.Viewer.setLayoutMode(m_LayoutMode.ToString)
Catch ex As Exception
Throw ex
End Try
End Set
End Property
''' <summary>
''' Legt den Modus für die Seitendarstellung fest,oder liest diese aus.
''' </summary>
<Description("Legt den Modus für die Seitendarstellung fest,oder liest diese aus."), _
Category("Darstellung"), _
DefaultValue(GetType(PDFPageMode), "none")> _
Public Property PageMode() As PDFPageMode
Get
Return m_PageMode
End Get
Set(ByVal value As PDFPageMode)
m_PageMode = value
Try
m_PDFHost.Viewer.setPageMode(m_PageMode.ToString)
Catch ex As Exception
Throw ex
End Try
End Set
End Property
''' <summary>
''' Bestimmt, ob die ToolBar angezeigt werden soll.
''' </summary>
<Description("Bestimmt, ob die ToolBar angezeigt werden soll."), _
Category("Layout"), _
DefaultValue(True)> _
Public Property ShowToolBar() As Boolean
Get
Return m_ShowToolBar
End Get
Set(ByVal value As Boolean)
m_ShowToolBar = value
Try
m_PDFHost.Viewer.setShowToolbar(value)
Catch ex As Exception
Throw ex
End Try
End Set
End Property
''' <summary>
''' Bestimmt, ob die ScrollBars angezeigt werden sollen.
''' </summary>
<Description("Bestimmt, ob die ScrollBars angezeigt werden sollen."), _
Category("Layout"), _
DefaultValue(True)> _
Public Property ShowScrollBars() As Boolean
Get
Return m_ShowScrollBars
End Get
Set(ByVal value As Boolean)
m_ShowScrollBars = value
Try
m_PDFHost.Viewer.setShowScrollbars(value)
Catch ex As Exception
Throw ex
End Try
End Set
End Property
''' <summary>
''' Legt den Modus für die Seiteneinpassung fest, oder liest diese aus.
''' </summary>
<Description("Legt den Modus für die Seiteneinpassung fest, oder liest diese aus."), _
Category("Darstellung"), _
DefaultValue(GetType(PDFViewMode), "Fit")> _
Public Property ViewMode() As PDFViewMode
Get
Return m_ViewMode
End Get
Set(ByVal value As PDFViewMode)
m_ViewMode = value
Try
m_PDFHost.Viewer.setView(m_ViewMode.ToString)
Catch ex As Exception
Throw ex
End Try
End Set
End Property
#End Region
#Region "Methoden"
''' <summary>
''' Geht im Undo-Buffer zur vorherigen Ansicht.
''' </summary>
Public Sub GoBackward()
Try
m_PDFHost.Viewer.GoBackwardStack()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GoForward()
Try
m_PDFHost.Viewer.GoForwardStack()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GotoPage(ByVal PageNumber As Integer)
Try
m_PDFHost.Viewer.setCurrentPage(PageNumber)
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GotoFirstPage()
Try
m_PDFHost.Viewer.GotoFirstPage()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GotoLastPage()
Try
m_PDFHost.Viewer.GotoLastPage()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GotoNextPage()
Try
m_PDFHost.Viewer.GotoNextPage()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub GotoPreviousPage()
Try
m_PDFHost.Viewer.GotoPreviousPage()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Function LoadFile(ByVal FileName As String) As Boolean
Try
Dim b As Boolean = m_PDFHost.Viewer.LoadFile(FileName)
If b Then
Me.ShowToolBar = m_ShowToolBar
Me.ShowScrollBars = m_ShowScrollBars
Me.LayoutMode = m_LayoutMode
Me.PageMode = m_PageMode
Me.ViewMode = m_ViewMode
End If
Return b
Catch ex As Exception
Throw ex
End Try
End Function
Public Sub PrintWithDialog()
Try
m_PDFHost.Viewer.PrintWithDialog()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub Zoom(ByVal Percent As Single)
Try
m_PDFHost.Viewer.setZoom(Percent)
Catch ex As Exception
Throw ex
End Try
End Sub
#End Region
End Class
... View more