使用 IRONPDF

如何在VB.NET中查看PDF文件

已更新 2024年3月10日
分享:

本文將深入探討使用IronPDF在VB.NET中創建PDF查看器。內容將涵蓋多個方面,包括PDF文件的創建、現有PDF文件的解析和操作,以及向PDF添加圖像。

1. IronPDF 和 VB.NET PDF 檢視器概述

IronPDF 是一個強大的 .NET 庫,為在 VB.NET 應用程式中處理 PDF 檔案提供了全面的功能。它提供了一系列功能,包括 PDF 創建、解析、操作和檢視。PDF 檢視器元件由 IronPDF 允許開發人員將PDF查看器無縫集成到他們的VB.NET應用程式中,使用戶無需依賴外部工具(如Adobe PDF Reader)即可查看PDF文件。

2. 創建 PDF 文件

IronPDF 簡化了在 VB.NET 中創建 PDF 文件的過程。有多種方法可以使用 IronPDF 生成 PDF。以下是一些示例:

使用HTML創建PDF文件

IronPDF允許您將HTML內容轉換為PDF。通過利用HTML到PDF的轉換功能,您可以輕鬆地從HTML模板或動態生成的HTML內容中生成PDF文檔。IronPDF網站提供了樣本代碼和如何實現這一目的的示例。

Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
VB.NET

將 XML 轉換為 PDF

如果您有需要轉換為 PDF 文件的 XML 數據,IronPDF 使這個過程變得簡單。它提供了將 XML 數據轉換為 PDF 的方法,允許您自定義生成的 PDF 的樣式和佈局。

string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
  text-align: center;
  padding: 20px;
  border: 1px solid #CDE7F0;
}
th{
  color: white;
  padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
  <table style='border-collapse: collapse;'>
  <thead>
    <tr>
      <th colspan='3'>
        <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
      </th>
    </tr>
  </thead>
  <tbody>
    <tr bgcolor='#9acd32'>
      <th bgcolor='#32ab90'>Title</th>
      <th bgcolor='#f49400'>Feature</th>
      <th bgcolor='#2a95d5'>Compatible</th>
    </tr>
    <xsl:for-each select='catalog/cd'>
    <tr>
      <td style='font-weight: bold;'><xsl:value-of select='title'/></td>
      <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
      <td><xsl:value-of select='compatible'/></td>
    </tr>
    </xsl:for-each>
    </tbody>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";
string xml = @"<?xml version='1.0' encoding='UTF-8'?>
<catalog>
  <cd>
    <title>IronPDF</title>
    <feature>Generate, format and manipulate PDFs</feature>
    <compatible>Microsoft Windows, Linux (Debian, CentOS, Ubuntu), MacOS, Docker (Windows, Linux, Azure), Azure (VPS, Webapps, Websites, Functions), AWS</compatible>
  </cd>
  <cd>
    <title>IronOCR</title>
    <feature>OCR engine, input, result</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
  <cd>
    <title>IronBarcode</title>
    <feature>Format, read and write Barcode</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
</catalog>
";
XslCompiledTransform transform = new XslCompiledTransform();
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// options, headers and footers may be set there
// Render our XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
  text-align: center;
  padding: 20px;
  border: 1px solid #CDE7F0;
}
th{
  color: white;
  padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
  <table style='border-collapse: collapse;'>
  <thead>
    <tr>
      <th colspan='3'>
        <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
      </th>
    </tr>
  </thead>
  <tbody>
    <tr bgcolor='#9acd32'>
      <th bgcolor='#32ab90'>Title</th>
      <th bgcolor='#f49400'>Feature</th>
      <th bgcolor='#2a95d5'>Compatible</th>
    </tr>
    <xsl:for-each select='catalog/cd'>
    <tr>
      <td style='font-weight: bold;'><xsl:value-of select='title'/></td>
      <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
      <td><xsl:value-of select='compatible'/></td>
    </tr>
    </xsl:for-each>
    </tbody>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";
string xml = @"<?xml version='1.0' encoding='UTF-8'?>
<catalog>
  <cd>
    <title>IronPDF</title>
    <feature>Generate, format and manipulate PDFs</feature>
    <compatible>Microsoft Windows, Linux (Debian, CentOS, Ubuntu), MacOS, Docker (Windows, Linux, Azure), Azure (VPS, Webapps, Websites, Functions), AWS</compatible>
  </cd>
  <cd>
    <title>IronOCR</title>
    <feature>OCR engine, input, result</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
  <cd>
    <title>IronBarcode</title>
    <feature>Format, read and write Barcode</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
</catalog>
";
XslCompiledTransform transform = new XslCompiledTransform();
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// options, headers and footers may be set there
// Render our XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
Dim xslt As String = "<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
  text-align: center;
  padding: 20px;
  border: 1px solid #CDE7F0;
}
th{
  color: white;
  padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
  <table style='border-collapse: collapse;'>
  <thead>
    <tr>
      <th colspan='3'>
        <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
      </th>
    </tr>
  </thead>
  <tbody>
    <tr bgcolor='#9acd32'>
      <th bgcolor='#32ab90'>Title</th>
      <th bgcolor='#f49400'>Feature</th>
      <th bgcolor='#2a95d5'>Compatible</th>
    </tr>
    <xsl:for-each select='catalog/cd'>
    <tr>
      <td style='font-weight: bold;'><xsl:value-of select='title'/></td>
      <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
      <td><xsl:value-of select='compatible'/></td>
    </tr>
    </xsl:for-each>
    </tbody>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
"
Dim xml As String = "<?xml version='1.0' encoding='UTF-8'?>
<catalog>
  <cd>
    <title>IronPDF</title>
    <feature>Generate, format and manipulate PDFs</feature>
    <compatible>Microsoft Windows, Linux (Debian, CentOS, Ubuntu), MacOS, Docker (Windows, Linux, Azure), Azure (VPS, Webapps, Websites, Functions), AWS</compatible>
  </cd>
  <cd>
    <title>IronOCR</title>
    <feature>OCR engine, input, result</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
  <cd>
    <title>IronBarcode</title>
    <feature>Format, read and write Barcode</feature>
    <compatible>Microsoft Windows, Linux, MacOS, Docker, Azure, AWS</compatible>
  </cd>
</catalog>
"
Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(xslt))
	transform.Load(reader)
End Using
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(xml))
	transform.Transform(reader, Nothing, results)
End Using
Dim Renderer As New IronPdf.ChromePdfRenderer()
' options, headers and footers may be set there
' Render our XML as a PDF via XSLT
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
VB   C#

在 VB.NET 中查看 PDF 文件的方法,圖 2:從 XML 到 PDF

將圖片添加到 PDF

IronPDF 可讓您將圖片添加到 PDF 文件中。您可以指定圖片在 PDF 中的位置、大小等屬性。在製作需要視覺元素的報告或文件時,這非常有用。

Dim lstimages As List(Of String) = New List(Of String) 
lstimages.Add("test.png") lstimages.Add("demo.png") 
Dim pdfdoc = ImageToPdfConverter.ImageToPdf(lstimages).SaveAs("Resultimage.pdf")  
Dim lstimages As List(Of String) = New List(Of String) 
lstimages.Add("test.png") lstimages.Add("demo.png") 
Dim pdfdoc = ImageToPdfConverter.ImageToPdf(lstimages).SaveAs("Resultimage.pdf")  
VB.NET

如何在 VB.NET 中查看 PDF 文件,圖 3:從 PDF 文件中提取圖像

從 PDF 文件中提取圖片

3. 解析和操作 PDF 文件

IronPDF 也提供了對現有 PDF 文件進行解析和操作的功能。您可以從 PDF 文件中提取文字、圖片和其他元素,修改其屬性,將多個 PDF 合併為一個文件,將一個 PDF 拆分成多個文件,並執行各種其他操作。以下是一個使用 VB.NET 中的 IronPDF 解析 PDF 文件的示例:

Imports IronPdf
    Module Program
        Sub Main(args As String())
            Dim AllText As String
            Dim pdfdoc = PdfDocument.FromFile("result.pdf")
            AllText = pdfdoc.ExtractTextFromPage(0)
            Console.WriteLine(AllText)
        End Sub
    End Module
Imports IronPdf
    Module Program
        Sub Main(args As String())
            Dim AllText As String
            Dim pdfdoc = PdfDocument.FromFile("result.pdf")
            AllText = pdfdoc.ExtractTextFromPage(0)
            Console.WriteLine(AllText)
        End Sub
    End Module
VB.NET

IronPDF 提供了一整套 API 和方法來操作 PDF 文件,使其成為在您的 VB.NET 應用程式中處理 PDF 文件的多功能工具。

如何在 VB.NET 中檢視 PDF 檔案,圖 4:頁面之間提取文本的輸出

提取頁面之間的文字輸出

4. 在 VB.NET 應用程式中整合 PDF 檢視器

現在,讓我們來探討如何將 PDF 檢視器整合到 VB.NET 應用程式中。 使用 IronPDF我們將涵蓋必要的步驟,包括設置專案、添加 PDFViewer 控制項、加載和顯示 PDF 文件、實現 PDF 視窗選項以及列印 PDF 文件。

設置項目

要開始,請在 Visual Studio 中創建一個新的 VB.NET Windows Forms 應用程式項目。請確保將 IronPDF 庫添加為您的項目的參考。

加載和顯示 PDF 文件

要在 VB.NET 中加載和顯示 PDF 文件,您需要提供 PDF 文件的檔案路徑或流。以下是範例:

Dim Renderer As var = New IronPdf.ChromePdfRenderer
Dim PDFs As var = New List(Of PdfDocument)
PDFs.Add(PdfDocument.FromFile("A.pdf"))
PDF.PrependPdf(Renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))
PDF.SaveAs("CoverAdded.pdf")
PDF.Dispose();
Dim Renderer As var = New IronPdf.ChromePdfRenderer
Dim PDFs As var = New List(Of PdfDocument)
PDFs.Add(PdfDocument.FromFile("A.pdf"))
PDF.PrependPdf(Renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))
PDF.SaveAs("CoverAdded.pdf")
PDF.Dispose();
VB.NET

打印 PDF 文件

IronPDF 提供了一種便捷的方法,直接從您的 VB.NET 應用程序打印 PDF 文件。 列印 PDFViewer 控制項的方法。以下是一個範例:

Dim renderer = New ChromePdfRenderer()
'Create new PdfDocument PDF and render URL into PDF document
        Dim PDF As PdfDocument = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
  PDF.SaveAs("UrlToPdf.pdf")
'Print PDF in 300 DPI without user new printdialog
        PDF.Print(300, False)
'For advance printing, you can use below 
        Dim PrintDocYouCanWorkWith As PrintDocument = PDF.GetPrintDocument()   
Dim renderer = New ChromePdfRenderer()
'Create new PdfDocument PDF and render URL into PDF document
        Dim PDF As PdfDocument = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
  PDF.SaveAs("UrlToPdf.pdf")
'Print PDF in 300 DPI without user new printdialog
        PDF.Print(300, False)
'For advance printing, you can use below 
        Dim PrintDocYouCanWorkWith As PrintDocument = PDF.GetPrintDocument()   
VB.NET

通過調用 GetPrintDocument 方法,您可以啟動當前載入的 PDF 文件的列印過程。

5. 結論

本文探討了如何使用IronPDF在VB.NET中創建一個PDF檢視器。涵蓋了多個方面,包括使用IronPDF的HTML到PDF轉換、XML到PDF轉換和圖片插入功能創建PDF文檔,以及使用IronPDF解析和操作現有的PDF文件。最後,將PDFViewer控制整合到VB.NET應用程式中,載入和顯示PDF文檔,實作PDF視窗選項以及列印PDF。

隨著您探索IronPDF所提供的各種功能和可能性,您將能夠輕鬆地在您的VB.NET應用程式中創建、操作和檢視PDF文檔。此外,IronPDF還能夠 渲染圖表 在PDF檔案中, 添加條碼, 使用密碼增強安全性浮水印,甚至 處理PDF表單 程式化地。

請隨意嘗試、探索,並參考IronPDF文件和代碼示例,以更深入地了解該庫的功能。有了IronPDF的幫助,您可以自信地在VB.NET應用程序中征服PDF處理和查看。

學習如何在MAUI中使用PDF查看器,請訪問「在 MAUI 中查看 PDF教學。

< 上一頁
如何在 .NET 中建立 PDF 簽名
下一個 >
如何使用IronPDF構建.NET PDF編輯應用程序

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >