Altbilgi içeriğine atla
IRONPDF KULLANARAK

IronPDF ile VB.NET PDF Görüntüleyici Nasıl Oluşturulur: Tam Bir Eğitim

PDF belgelerini doğrudan VB.NET uygulamaları içinde görüntülemek, birçok geliştirici için hala zorlayıcı olabilir. .NET Framework ve .NET Core, PDF dosyalarını görüntülemenin yerleşik yollarını sağlamaz, bu nedenle insanlar genellikle eski ActiveX kontrollerine veya karışık üçüncü taraf araçlarına güvenir. Bu hem geliştiriciler hem de kullanıcılar için sinir bozucu olabilir.

Windows Forms veya WPF uygulaması oluşturuyorsanız, PDF görüntüleme için güvenilir bir şey istersiniz. Faturalar, raporlar veya hatta PDF formatına dönüştürülmüş Word belgeleri olsun, IronPDF bu süreci kolaylaştırarak dış bileşenlere olan ihtiyaçı ortadan kaldırır ve projenizin içinde doğrudan PDF oluşturmak, düzenlemek ve işlemek için güçlü seçenekler sunar.

Bu eğitimde, size adım adım bir VB.NET PDF görüntüleyici oluşturmayı göstereceğim. Sonunda, uygulamanızda PDF belgelerini bir uzman gibi nasıl oluşturup görüntüleyeceğinizi bileceksiniz. Ayrıca, yakınlaştırma, gezinme ve yazdırma gibi özellikleri nasıl eklemenin ne kadar kolay olduğunu da göreceksiniz. Bu yaklaşımı yakın zamanda iç bir projede denedim ve ekibimizin rapor inceleme sürecini önemli ölçüde hızlandırdı.

VB.NET'te PDF Görüntülemeyi Zorlayıcı Yapan Nedir?

Visual Studio araç kutusu, standart bir PDF görüntüleyici denetimi içermez. Geliştiriciler genellikle PDF dosyalarını görüntülemek için Internet Explorer veya gömülü WebBrowser kontrollerine güvenirler ancak bu yaklaşımlar kullanıcının varsayılan PDF okuyucusuna bağımlıdır ve dağıtım için gizli maliyetlere neden olabilir.

Geleneksel çözümler ayrıca harici yazılım kurulumu veya uygun PDF formu işleme, yazdırma veya render için manuel yapılandırma gerektirebilir, bu da karmaşıklığı artırır ve birden fazla Windows ortamında PDF'lerin görüntüsünü özelleştirme imkanını sınırlar.

IronPDF VB.NET'te PDF Görüntülemeyi Nasıl Kolaylaştırır?

IronPDF, VB.NET uygulamalarında PDF işlemeyi Adobe Reader veya diğer harici görüntüleyicileri gerektirmeyen kendi kendine yeterli bir kütüphane sağlayarak dönüştürür. Temel görüntülemenin ötesinde, geliştiricilerin tanıdık .NET desenlerini kullanarak programlı bir şekilde PDF oluşturmasını, düzenlemesini, işlemeyi ve render etmesini sağlar.

Kütüphanenin mimarisi, tam form desteği ve gömülü multimedya gibi modern özellikler içeren karmaşık PDF'lerin piksellerin mükemmel görüntüsünü sağlayan Chrome tabanlı bir render motoru kullanır. Bu yaklaşım, tüm Windows ortamlarında tutarlı render sağlar.

Temel yetenekler arasında

  • İndirme veya tarayıcı bağımlılığını gerektirmeyen doğrudan PDF render etme
  • Word belgeleri veya HTML'den PDF formatına dönüştürme
  • PDF sayfalarını düzenleme, bölme ve birleştirme
  • PDF formlarını doldurma ve çıkarma
  • Özelleştirilebilir ayarlara sahip yerleşik yazdırma desteği
  • Şablonlar, resimler ve çok sayfalı PDF dosyaları için destek

Bu özellikler, IronPDF'i .NET uygulamaları için son derece özelleştirilebilir bir çözüm haline getirir, geliştiricilerin masaüstü veya web uygulama ortamında karmaşık PDF belgelerini işlemesine olanak tanır.

VB.NET Projenize IronPDF Nasıl Kurulur?

IronPDF kurulumunu NuGet Paket Yöneticisi aracılığıyla birkaç adımda tamamlamak gerekir. Visual Studio'da VB.NET Windows Form projenizi açın ve şu adımları uygulayın:

  1. Yeni projenizi hedef framework veya .NET Core ile Visual Studio'da açın.
  2. Solution Explorer'da projenize sağ tıklayın
  3. "Manage NuGet Packages"ı seçin
  4. Göz at sekmesinde "IronPDF"'yi arayın
  5. IronPDF paketinde Yükle'ye tıklayın

Kurulumdan sonra, VB.NET dosyalarınıza bu import ifadesini ekleyin:

Imports IronPdf
Imports IronPdf
$vbLabelText   $csharpLabel

Bu import ifadesi, VB.NET projenizin tüm IronPDF sınıflarına ve yöntemlerine erişimini sağlar, böylece PDF belgelerini programlı bir şekilde yükleyebilir, render edebilir, yazdırabilir ve işleyebilirsiniz.

Bu kurulum, tüm gerekli çalışma zamanı bileşenlerini içerir, manuel yapılandırmayı ortadan kaldırır ve gizli maliyetlerden kaçınır.

Windows Forms'da Temel PDF Görüntüleyici Nasıl Oluşturulur?

PDF görüntüleyici oluşturma, bir Windows Forms uygulaması oluşturmak ve IronPDF'in render yeteneklerini uygulamakla başlar. İşte uygulamanızda PDF'leri görüntülemek için basitleştirilmiş bir yaklaşım:

Imports System.Drawing
Imports System.IO
Imports IronPdf
Public Class Form1
    Private currentPdf As PdfDocument
    Private pdfBitmaps() As Bitmap
    Private currentPage As Integer = 0
    Private zoomLevel As Double = 1.0
    ' Load PDF Button
    Private Sub LoadPdfButton_Click(sender As Object, e As EventArgs) Handles LoadPdfButton.Click
        Using openFileDialog As New OpenFileDialog()
            openFileDialog.Filter = "PDF Files (*.pdf)|*.pdf"
            If openFileDialog.ShowDialog() = DialogResult.OK Then
                ' Load PDF
                currentPdf = PdfDocument.FromFile(openFileDialog.FileName)
                ' Render all pages to image files
                Dim filePaths As String() = currentPdf.RasterizeToImageFiles("page_*.png")
                ' Load images into memory
                Dim pageList As New List(Of Bitmap)()
                For Each filePath As String In filePaths
                    Using ms As New MemoryStream(File.ReadAllBytes(filePath))
                        Dim bmp As New Bitmap(ms)
                        pageList.Add(bmp)
                    End Using
                Next
                pdfBitmaps = pageList.ToArray()
                currentPage = 0
                zoomLevel = 1.0
                DisplayCurrentPage()
            End If
        End Using
    End Sub
    ' Show the current page in PictureBox
    Private Sub DisplayCurrentPage()
        If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
            Dim bmp As Bitmap = pdfBitmaps(currentPage)
            ' Apply zoom
            Dim newWidth As Integer = CInt(bmp.Width * zoomLevel)
            Dim newHeight As Integer = CInt(bmp.Height * zoomLevel)
            Dim zoomedBmp As New Bitmap(bmp, newWidth, newHeight)
            PictureBox1.Image = zoomedBmp
        Else
            PictureBox1.Image = Nothing
        End If
        UpdateNavigationButtons()
    End Sub
Imports System.Drawing
Imports System.IO
Imports IronPdf
Public Class Form1
    Private currentPdf As PdfDocument
    Private pdfBitmaps() As Bitmap
    Private currentPage As Integer = 0
    Private zoomLevel As Double = 1.0
    ' Load PDF Button
    Private Sub LoadPdfButton_Click(sender As Object, e As EventArgs) Handles LoadPdfButton.Click
        Using openFileDialog As New OpenFileDialog()
            openFileDialog.Filter = "PDF Files (*.pdf)|*.pdf"
            If openFileDialog.ShowDialog() = DialogResult.OK Then
                ' Load PDF
                currentPdf = PdfDocument.FromFile(openFileDialog.FileName)
                ' Render all pages to image files
                Dim filePaths As String() = currentPdf.RasterizeToImageFiles("page_*.png")
                ' Load images into memory
                Dim pageList As New List(Of Bitmap)()
                For Each filePath As String In filePaths
                    Using ms As New MemoryStream(File.ReadAllBytes(filePath))
                        Dim bmp As New Bitmap(ms)
                        pageList.Add(bmp)
                    End Using
                Next
                pdfBitmaps = pageList.ToArray()
                currentPage = 0
                zoomLevel = 1.0
                DisplayCurrentPage()
            End If
        End Using
    End Sub
    ' Show the current page in PictureBox
    Private Sub DisplayCurrentPage()
        If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
            Dim bmp As Bitmap = pdfBitmaps(currentPage)
            ' Apply zoom
            Dim newWidth As Integer = CInt(bmp.Width * zoomLevel)
            Dim newHeight As Integer = CInt(bmp.Height * zoomLevel)
            Dim zoomedBmp As New Bitmap(bmp, newWidth, newHeight)
            PictureBox1.Image = zoomedBmp
        Else
            PictureBox1.Image = Nothing
        End If
        UpdateNavigationButtons()
    End Sub
Imports System.Drawing
Imports System.IO
Imports IronPdf

Public Class Form1
    Private currentPdf As PdfDocument
    Private pdfBitmaps() As Bitmap
    Private currentPage As Integer = 0
    Private zoomLevel As Double = 1.0

    ' Load PDF Button
    Private Sub LoadPdfButton_Click(sender As Object, e As EventArgs) Handles LoadPdfButton.Click
        Using openFileDialog As New OpenFileDialog()
            openFileDialog.Filter = "PDF Files (*.pdf)|*.pdf"
            If openFileDialog.ShowDialog() = DialogResult.OK Then
                ' Load PDF
                currentPdf = PdfDocument.FromFile(openFileDialog.FileName)
                ' Render all pages to image files
                Dim filePaths As String() = currentPdf.RasterizeToImageFiles("page_*.png")
                ' Load images into memory
                Dim pageList As New List(Of Bitmap)()
                For Each filePath As String In filePaths
                    Using ms As New MemoryStream(File.ReadAllBytes(filePath))
                        Dim bmp As New Bitmap(ms)
                        pageList.Add(bmp)
                    End Using
                Next
                pdfBitmaps = pageList.ToArray()
                currentPage = 0
                zoomLevel = 1.0
                DisplayCurrentPage()
            End If
        End Using
    End Sub

    ' Show the current page in PictureBox
    Private Sub DisplayCurrentPage()
        If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
            Dim bmp As Bitmap = pdfBitmaps(currentPage)
            ' Apply zoom
            Dim newWidth As Integer = CInt(bmp.Width * zoomLevel)
            Dim newHeight As Integer = CInt(bmp.Height * zoomLevel)
            Dim zoomedBmp As New Bitmap(bmp, newWidth, newHeight)
            PictureBox1.Image = zoomedBmp
        Else
            PictureBox1.Image = Nothing
        End If
        UpdateNavigationButtons()
    End Sub
End Class
$vbLabelText   $csharpLabel

Kod Açıklaması:

  • currentPdf yüklenen PDF belgesini depolar.
  • pdfBitmaps her PDF sayfası için bitmap resimlerini tutar, böylece bunlar PictureBox kontrolünde görüntülenebilir.
  • LoadPdfButton_Click kullanıcıların bir PDF dosyasını seçmesine izin vermek için standart bir OpenFileDialog kullanır.
  • PdfDocument.FromFile PDF belgesini yükler ve RasterizeToImageFiles her sayfayı resim dosyalarına dönüştürür.
  • Her dosya bir Bitmap olarak belleğe okunur, diziye eklenir ve ilk sayfa DisplayCurrentPage() ile görüntülenir.

Programı çalıştırdığımızda, "Load PDF" düğmesine tıkladığımızda çıkan açılır iletişim kutusu aracılığıyla bir PDF dosyasını yükleyebileceğiz.

PDF Gezinme Kontrolleri Nasıl Uygulanır?

Gezinme, çok sayfalı belgelerde hareket sağlamasıyla kullanıcı deneyimini geliştirir. Formunuza Önceki ve Sonraki düğmelerini şu uygulama ile ekleyin:

' Next Page Button
Private Sub NextButton_Click(sender As Object, e As EventArgs) Handles NextButton.Click
    If currentPage < pdfBitmaps.Length - 1 Then
        currentPage += 1
        DisplayCurrentPage()
    End If
End Sub
' Previous Page Button
Private Sub PreviousButton_Click(sender As Object, e As EventArgs) Handles PreviousButton.Click
    If currentPage > 0 Then
        currentPage -= 1
        DisplayCurrentPage()
    End If
End Sub
' Next Page Button
Private Sub NextButton_Click(sender As Object, e As EventArgs) Handles NextButton.Click
    If currentPage < pdfBitmaps.Length - 1 Then
        currentPage += 1
        DisplayCurrentPage()
    End If
End Sub
' Previous Page Button
Private Sub PreviousButton_Click(sender As Object, e As EventArgs) Handles PreviousButton.Click
    If currentPage > 0 Then
        currentPage -= 1
        DisplayCurrentPage()
    End If
End Sub
' Next Page Button
Private Sub NextButton_Click(sender As Object, e As EventArgs) Handles NextButton.Click
    If currentPage < pdfBitmaps.Length - 1 Then
        currentPage += 1
        DisplayCurrentPage()
    End If
End Sub

' Previous Page Button
Private Sub PreviousButton_Click(sender As Object, e As EventArgs) Handles PreviousButton.Click
    If currentPage > 0 Then
        currentPage -= 1
        DisplayCurrentPage()
    End If
End Sub
$vbLabelText   $csharpLabel

Bu Private Sub prosedürleri, Object sender, EventArgs e kullanarak PDF sayfaları arasında gezinmeyi ele alır. Düğmeler currentPage'i günceller ve Windows Form'unda PDF sayfasını render etmek için DisplayCurrentPage()'i çağırır.

' Update navigation controls and page label
Private Sub UpdateNavigationButtons()
    PreviousButton.Enabled = currentPage > 0
    NextButton.Enabled = currentPage < pdfBitmaps.Length - 1
    PageLabel.Text = $"Page {currentPage + 1} of {pdfBitmaps.Length}"
End Sub
' Update navigation controls and page label
Private Sub UpdateNavigationButtons()
    PreviousButton.Enabled = currentPage > 0
    NextButton.Enabled = currentPage < pdfBitmaps.Length - 1
    PageLabel.Text = $"Page {currentPage + 1} of {pdfBitmaps.Length}"
End Sub
' Update navigation controls and page label
Private Sub UpdateNavigationButtons()
    PreviousButton.Enabled = currentPage > 0
    NextButton.Enabled = currentPage < pdfBitmaps.Length - 1
    PageLabel.Text = $"Page {currentPage + 1} of {pdfBitmaps.Length}"
End Sub
$vbLabelText   $csharpLabel

Bu, kullanıcıların ilk veya son sayfanın ötesine geçememesi için düğme durumlarını güncellerken, etiket mevcut sayfa numarasını ve toplam sayfaları gösterir.

Çıktı

Farklı Kaynaklardan PDF Dosyaları Nasıl Yüklenir?

IronPDF, yerel dosyaların ötesinde çeşitli kaynaklardan PDF yüklemeyi destekler. Bu esneklik, veritabanları, web hizmetleri ve bellek akışları ile entegrasyona olanak tanır:

URL'den Yükleme

' Load PDF from URL
Private Sub LoadUrlButton_Click(sender As Object, e As EventArgs) Handles LoadUrlButton.Click
    Dim url As String = UrlTextBox.Text.Trim()
    If String.IsNullOrEmpty(url) Then
        MessageBox.Show("Please enter a valid URL.")
        Return
    End If
    Try
        LoadFromUrl(url)
    Catch ex As Exception
        MessageBox.Show("Failed to load PDF: " & ex.Message)
    End Try
End Sub
' Load PDF from URL
Private Sub LoadUrlButton_Click(sender As Object, e As EventArgs) Handles LoadUrlButton.Click
    Dim url As String = UrlTextBox.Text.Trim()
    If String.IsNullOrEmpty(url) Then
        MessageBox.Show("Please enter a valid URL.")
        Return
    End If
    Try
        LoadFromUrl(url)
    Catch ex As Exception
        MessageBox.Show("Failed to load PDF: " & ex.Message)
    End Try
End Sub
' Load PDF from URL
Private Sub LoadUrlButton_Click(sender As Object, e As EventArgs) Handles LoadUrlButton.Click
    Dim url As String = UrlTextBox.Text.Trim()
    If String.IsNullOrEmpty(url) Then
        MessageBox.Show("Please enter a valid URL.")
        Return
    End If
    Try
        LoadFromUrl(url)
    Catch ex As Exception
        MessageBox.Show("Failed to load PDF: " & ex.Message)
    End Try
End Sub
$vbLabelText   $csharpLabel

Bu Private Sub, URL girdisini kontrol eder, geçersizse bir uyarı görüntüler ve LoadFromUrl'i arayarak PDF'yi dinamik olarak render eder.

Private Sub LoadFromUrl(url As String)
    Dim renderer As New ChromePdfRenderer()
    renderer.RenderingOptions.EnableJavaScript = True
    renderer.RenderingOptions.CssMediaType = Rendering.PdfCssMediaType.Print
    renderer.RenderingOptions.WaitFor.JavaScript(3000)
    currentPdf = renderer.RenderUrlAsPdf(url)
    LoadPdfBitmaps()
End Sub
Private Sub LoadFromUrl(url As String)
    Dim renderer As New ChromePdfRenderer()
    renderer.RenderingOptions.EnableJavaScript = True
    renderer.RenderingOptions.CssMediaType = Rendering.PdfCssMediaType.Print
    renderer.RenderingOptions.WaitFor.JavaScript(3000)
    currentPdf = renderer.RenderUrlAsPdf(url)
    LoadPdfBitmaps()
End Sub
Private Sub LoadFromUrl(url As String)
    Dim renderer As New ChromePdfRenderer()
    renderer.RenderingOptions.EnableJavaScript = True
    renderer.RenderingOptions.CssMediaType = Rendering.PdfCssMediaType.Print
    renderer.RenderingOptions.WaitFor.JavaScript(3000)
    currentPdf = renderer.RenderUrlAsPdf(url)
    LoadPdfBitmaps()
End Sub
$vbLabelText   $csharpLabel

Bu, bir web sayfası URL'sini PDF belgesine dönüştürmek için ChromePdfRenderer kullanır. Seçenekler, JavaScript yürütme ve yazdırma dostu CSS'yi sağlar, ardından PDF sayfaları bitmaps olarak yüklenir.

Çıktı

IronPDF ile VB.NET PDF Görüntüleyici Nasıl Oluşturulur: Tam Bir Tutorial: Sekil 3 - PDF görüntüleyici ile gösterilen URL'den PDF'e

HTML İçeriğinden Yükleme

Private Sub LoadHtmlButton_Click(sender As Object, e As EventArgs) Handles LoadHtmlButton.Click
    Dim htmlContent As String = "<html><body><h1>Hello PDF!</h1><p>This is a hardcoded HTML PDF test.</p></body></html>"
    LoadFromHtml(htmlContent)
End Sub
Private Sub LoadFromHtml(htmlContent As String)
    Dim renderer As New ChromePdfRenderer()
    currentPdf = renderer.RenderHtmlAsPdf(htmlContent)
    LoadPdfBitmaps()
End Sub
Private Sub LoadHtmlButton_Click(sender As Object, e As EventArgs) Handles LoadHtmlButton.Click
    Dim htmlContent As String = "<html><body><h1>Hello PDF!</h1><p>This is a hardcoded HTML PDF test.</p></body></html>"
    LoadFromHtml(htmlContent)
End Sub
Private Sub LoadFromHtml(htmlContent As String)
    Dim renderer As New ChromePdfRenderer()
    currentPdf = renderer.RenderHtmlAsPdf(htmlContent)
    LoadPdfBitmaps()
End Sub
Private Sub LoadHtmlButton_Click(sender As Object, e As EventArgs) Handles LoadHtmlButton.Click
    Dim htmlContent As String = "<html><body><h1>Hello PDF!</h1><p>This is a hardcoded HTML PDF test.</p></body></html>"
    LoadFromHtml(htmlContent)
End Sub

Private Sub LoadFromHtml(htmlContent As String)
    Dim renderer As New ChromePdfRenderer()
    currentPdf = renderer.RenderHtmlAsPdf(htmlContent)
    LoadPdfBitmaps()
End Sub
$vbLabelText   $csharpLabel

Bu örnek, RenderHtmlAsPdf yöntemini kullanarak HTML içeriğini PDF'ye dönüştürür. Bu süreç, dinamik raporlar veya şablonlar için idealdir.

Çıktı

IronPDF ile VB.NET PDF Görüntüleyici Nasıl Oluşturulur: Tam Bir Tutorial: Sekil 4 - PDF görüntüleyicide gösterilen HTML'den PDF'e

Bu yöntemler, geçici dosyalara ihtiyaç duymadan dinamik PDF oluşturma ve görüntüleme sağlar, performansı ve güvenliği artırır.

Yakınlaştırma İşlevselliği Nasıl Eklenir?

Yakınlaştırma kontrolleri, ayrıntılı belgeler için okunabilirliği artırır. Resim ölçeklendirmeyi kullanarak yakınlaştırmayı uygulayın:

Private Sub ZoomInButton_Click(sender As Object, e As EventArgs) Handles ZoomInButton.Click
        zoomLevel = Math.Min(zoomLevel + 0.25, 3.0)
        DisplayCurrentPage()
    End Sub
    Private Sub ZoomOutButton_Click(sender As Object, e As EventArgs) Handles ZoomOutButton.Click
        zoomLevel = Math.Max(zoomLevel - 0.25, 0.5)
        DisplayCurrentPage()
    End Sub
    Private Sub ApplyZoom()
        If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
            Dim pageImage As Bitmap = pdfBitmaps(currentPage)
            Dim newWidth As Integer = CInt(pageImage.Width * zoomLevel)
            Dim newHeight As Integer = CInt(pageImage.Height * zoomLevel)
            Dim zoomedImage As New Bitmap(pageImage, newWidth, newHeight)
            PictureBox1.Image = zoomedImage
        Else
            PictureBox1.Image = Nothing
        End If
    End Sub
Private Sub ZoomInButton_Click(sender As Object, e As EventArgs) Handles ZoomInButton.Click
        zoomLevel = Math.Min(zoomLevel + 0.25, 3.0)
        DisplayCurrentPage()
    End Sub
    Private Sub ZoomOutButton_Click(sender As Object, e As EventArgs) Handles ZoomOutButton.Click
        zoomLevel = Math.Max(zoomLevel - 0.25, 0.5)
        DisplayCurrentPage()
    End Sub
    Private Sub ApplyZoom()
        If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
            Dim pageImage As Bitmap = pdfBitmaps(currentPage)
            Dim newWidth As Integer = CInt(pageImage.Width * zoomLevel)
            Dim newHeight As Integer = CInt(pageImage.Height * zoomLevel)
            Dim zoomedImage As New Bitmap(pageImage, newWidth, newHeight)
            PictureBox1.Image = zoomedImage
        Else
            PictureBox1.Image = Nothing
        End If
    End Sub
Private Sub ZoomInButton_Click(sender As Object, e As EventArgs) Handles ZoomInButton.Click
    zoomLevel = Math.Min(zoomLevel + 0.25, 3.0)
    DisplayCurrentPage()
End Sub

Private Sub ZoomOutButton_Click(sender As Object, e As EventArgs) Handles ZoomOutButton.Click
    zoomLevel = Math.Max(zoomLevel - 0.25, 0.5)
    DisplayCurrentPage()
End Sub

Private Sub ApplyZoom()
    If pdfBitmaps IsNot Nothing AndAlso currentPage < pdfBitmaps.Length Then
        Dim pageImage As Bitmap = pdfBitmaps(currentPage)
        Dim newWidth As Integer = CInt(pageImage.Width * zoomLevel)
        Dim newHeight As Integer = CInt(pageImage.Height * zoomLevel)
        Dim zoomedImage As New Bitmap(pageImage, newWidth, newHeight)
        PictureBox1.Image = zoomedImage
    Else
        PictureBox1.Image = Nothing
    End If
End Sub
$vbLabelText   $csharpLabel

Bu kod, okunabilirliği artırmak için zoomLevel'ı adım adım ayarlar ve zoom ölçeklendirmesini uygulamak için DisplayCurrentPage()'i çağırır.

PDF Belgeleri Nasıl Yazdırılır?

Yazdırma işlevselliği, görüntüleyici deneyimini tamamlar. IronPDF, yerleşik yöntemlerle yazdırmayı basitleştirir:

Private Sub PrintButton_Click(sender As Object, e As EventArgs) Handles PrintButton.Click
        If currentPdf IsNot Nothing Then
            ' Simple print with default settings
            currentPdf.Print()
            ' Or with custom settings
            Dim printDoc As PrintDocument = currentPdf.GetPrintDocument()
            Using printDialog As New PrintDialog()
                printDialog.Document = printDoc
                If printDialog.ShowDialog() = DialogResult.OK Then
                    printDoc.Print()
                End If
            End Using
        End If
    End Sub
Private Sub PrintButton_Click(sender As Object, e As EventArgs) Handles PrintButton.Click
        If currentPdf IsNot Nothing Then
            ' Simple print with default settings
            currentPdf.Print()
            ' Or with custom settings
            Dim printDoc As PrintDocument = currentPdf.GetPrintDocument()
            Using printDialog As New PrintDialog()
                printDialog.Document = printDoc
                If printDialog.ShowDialog() = DialogResult.OK Then
                    printDoc.Print()
                End If
            End Using
        End If
    End Sub
Private Sub PrintButton_Click(sender As Object, e As EventArgs) Handles PrintButton.Click
    If currentPdf IsNot Nothing Then
        ' Simple print with default settings
        currentPdf.Print()
        ' Or with custom settings
        Dim printDoc As PrintDocument = currentPdf.GetPrintDocument()
        Using printDialog As New PrintDialog()
            printDialog.Document = printDoc
            If printDialog.ShowDialog() = DialogResult.OK Then
                printDoc.Print()
            End If
        End Using
    End If
End Sub
$vbLabelText   $csharpLabel

Bu Private Sub, kullanıcılara PDF belgesini varsayılan veya özel yazıcı ayarlarıyla yazdırma olanağı sağlar. GetPrintDocument(), Windows Forms PrintDialog ile entegrasyon icin bir PrintDocument nesnesi dondurur.

WPF Uygulamalarinda PDF Görüntüleme Nasıl Uygulanir?

Windows Forms masaustu gelisimine hakimken, WPF uygulamalari da IronPDF'den yararlanabilir. Yöntem biraz farklilik gösterir:

' In WPF Window code-behind
Private Sub LoadPdfInWpf(filePath As String)
    Dim pdfDoc As PdfDocument = PdfDocument.FromFile(filePath)
    Dim pageImage As Bitmap = pdfDoc.ToBitmap(0)
    ' Convert to WPF-compatible image
    Dim bitmapImage As New BitmapImage()
    Using memory As New MemoryStream()
        pageImage.Save(memory, ImageFormat.Png)
        memory.Position = 0
        bitmapImage.BeginInit()
        bitmapImage.StreamSource = memory
        bitmapImage.CacheOption = BitmapCacheOption.OnLoad
        bitmapImage.EndInit()
    End Using
    ImageControl.Source = bitmapImage
End Sub
' In WPF Window code-behind
Private Sub LoadPdfInWpf(filePath As String)
    Dim pdfDoc As PdfDocument = PdfDocument.FromFile(filePath)
    Dim pageImage As Bitmap = pdfDoc.ToBitmap(0)
    ' Convert to WPF-compatible image
    Dim bitmapImage As New BitmapImage()
    Using memory As New MemoryStream()
        pageImage.Save(memory, ImageFormat.Png)
        memory.Position = 0
        bitmapImage.BeginInit()
        bitmapImage.StreamSource = memory
        bitmapImage.CacheOption = BitmapCacheOption.OnLoad
        bitmapImage.EndInit()
    End Using
    ImageControl.Source = bitmapImage
End Sub
Imports System.IO
Imports System.Drawing
Imports System.Drawing.Imaging
Imports System.Windows.Media.Imaging

' In WPF Window code-behind
Private Sub LoadPdfInWpf(filePath As String)
    Dim pdfDoc As PdfDocument = PdfDocument.FromFile(filePath)
    Dim pageImage As Bitmap = pdfDoc.ToBitmap(0)
    ' Convert to WPF-compatible image
    Dim bitmapImage As New BitmapImage()
    Using memory As New MemoryStream()
        pageImage.Save(memory, ImageFormat.Png)
        memory.Position = 0
        bitmapImage.BeginInit()
        bitmapImage.StreamSource = memory
        bitmapImage.CacheOption = BitmapCacheOption.OnLoad
        bitmapImage.EndInit()
    End Using
    ImageControl.Source = bitmapImage
End Sub
$vbLabelText   $csharpLabel

PDF Görüntüleyici Performansi icin En Iyi Uygulamalar Nelerdir?

PDF görüntüleme optimizasyonu, sorunsuz bir kullanıcı deneyimini garantiler:

Bellek Yönetimi

Isiniz bittiginde PDF dokümanlarini her zaman kapatin:

Protected Overrides Sub OnFormClosed(e As FormClosedEventArgs)
    If currentPdf IsNot Nothing Then
        currentPdf.Dispose()
    End If
    MyBase.OnFormClosed(e)
End Sub
Protected Overrides Sub OnFormClosed(e As FormClosedEventArgs)
    If currentPdf IsNot Nothing Then
        currentPdf.Dispose()
    End If
    MyBase.OnFormClosed(e)
End Sub
Protected Overrides Sub OnFormClosed(e As FormClosedEventArgs)
    If currentPdf IsNot Nothing Then
        currentPdf.Dispose()
    End If
    MyBase.OnFormClosed(e)
End Sub
$vbLabelText   $csharpLabel

Asenkron Yukleme

IronPDF ek olarak buyuk PDF'leri arayuzu dondurmeksizin yuklemek icin faydali olan asenkron yukleme destekler:

Private Async Sub LoadPdfAsync(filePath As String)
    LoadingLabel.Visible = True
    Await Task.Run(Sub()
        currentPdf = PdfDocument.FromFile(filePath)
    End Sub)
    LoadingLabel.Visible = False
    DisplayCurrentPage()
End Sub
Private Async Sub LoadPdfAsync(filePath As String)
    LoadingLabel.Visible = True
    Await Task.Run(Sub()
        currentPdf = PdfDocument.FromFile(filePath)
    End Sub)
    LoadingLabel.Visible = False
    DisplayCurrentPage()
End Sub
Private Async Sub LoadPdfAsync(filePath As String)
    LoadingLabel.Visible = True
    Await Task.Run(Sub()
                       currentPdf = PdfDocument.FromFile(filePath)
                   End Sub)
    LoadingLabel.Visible = False
    DisplayCurrentPage()
End Sub
$vbLabelText   $csharpLabel

Sonuç

IronPDF ile VB.NET'te PDF görüntüleyici oluşturmak, geleneksel yaklasimlarin karmasikligini ortadan kaldirirken profesyonel özellikler sunar. Temel dosya görüntülemeden gelişmiş PDF form işlemeye ve baskiya kadar IronPDF, Windows Forms uygulamalarinizdaki PDF etkilesiminin tüm yonlerini ele alir.

Rapor göstermekten form işlemeye veya doküman yonetim sistemlerini uygulamaya kadar, IronPDF kapsamli PDF cozumleri icin gereken araclari, destegi ve lisans seçeneklerini sunar.

IronPDF'un ücretsiz denemesi ile tüm özellikleri kesfetmek icin VB.NET PDF görüntüleyici projenize başlayin. Esnek lisanslama ile uretim yayilimlarina buyuyun. Detayli API dokümantasyonu ve ek örnekler icin IronPDF dokümantasyonunu ziyaret edin ve kapsamli VB.NET kod örneklerini kesfedin.

NuGet NuGet ile Yükle

PM >  Install-Package IronPdf

IronPDF üzerine NuGet için hızlı bir kurulum kontrol edin. 10 milyondan fazla indirme ile C# ile PDF geliştirmesini dönüştürüyor. DLL veya Windows yükleyicisini de indirebilirsiniz.

Sıkça Sorulan Sorular

VB.NET'te nasıl bir PDF görüntüleyici oluşturabilirim?

VB.NET'te IronPDF kullanarak bir PDF görüntüleyici oluşturabilirsiniz. Bu, PDF sayfalarını açma, görüntüleme, yakınlaştırma, gezinme, yazdırma ve kaydetme işlemlerini .NET uygulamalarınız içinde kolayca yapmanıza olanak tanır.

VB.NET'te PDF'leri görüntülerken geliştiriciler hangi zorluklarla karşılaşır?

Geliştiriciler sıkça zorlanır çünkü .NET Framework ve .NET Core, PDF dosyalarını görüntülemek için yerleşik yöntemler sunmaz, bu da birçoğunu eski ActiveX kontrollerine veya karmaşık üçüncü taraf araçlarına güvenmek zorunda bırakır.

IronPDF, hem .NET Framework hem de .NET Core ile kullanılabilir mi?

Evet, IronPDF hem .NET Framework hem de .NET Core ile uyumludur ve bu da onu VB.NET'te PDF görüntüleme uygulamaları geliştirmek için çok yonlu bir seçenek yapar.

IronPDF, PDF görüntüleme için hangi özellikleri sunar?

IronPDF, PDF belgeleriyle etkileşimde bulunurken kullanıcı deneyimini artıran PDF sayfalarını açma, görüntüleme, yakınlaştırma, gezinme, yazdırma ve kaydetme gibi özellikler sunar.

VB.NET'te PDF görüntüleme için ActiveX kontrollerinden neden kaçınmalıyım?

ActiveX kontrolleri genellikle güncelliğini yitirir ve dağınık uygulamalara neden olabilir. Modern kütüphaneler gibi IronPDF kullanmak, VB.NET'te PDF görüntüleme için daha düzenli ve güvenilir bir çözüm sunar.

VB.NET'te IronPDF kullanarak PDF belgelerini yazdırmak mümkün mü?

Evet, IronPDF, VB.NET uygulamanızdan PDF belgelerini doğrudan yazdırmanıza olanak tanir, bu da belgelerinin basılı kopyalarına ihtiyaç duyan kullanıcılar için kesintisiz bir deneyim sağlar.

IronPDF, kullanıcılar için PDF görüntüleme deneyimini nasıl geliştirir?

IronPDF, PDF'lerle etkileşimde bulunmak için kolay kullanım sağlayarak, sorunsuz gezinme, yakınlaştırma yetenekleri ve belgeleri zahmetsizce kaydetme ve yazdırma gibi özellikler sunarak PDF görüntüleme deneyimini geliştirir.

IronPDF, VB.NET PDF görüntüleyici uygulamaları için .NET 10 ile uyumlu mu?

Evet — IronPDF, .NET 10 ile tam uyumludur. VB.NET projelerini .NET 10'da, .NET 9, .NET 8, .NET Core, .NET Standard ve .NET Framework 4.6.2+ gibi önceki versiyonlarla çalışanlari destekler. Bu, en son platformu kullanarak VB.NET PDF görüntüleyici uygulamaları oluşturabileceğiniz anlamına gelir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara