使用IRONPDF

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

更新 2024年三月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 阅读器等外部工具即可查看 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.将 PDF 阅读器集成到 VB.NET 应用程序中

现在,让我们探讨如何将 PDF 阅读器集成到 VB.NET 应用程序中 使用 IronPDF.我们将介绍必要的步骤,包括设置项目、添加 PDFViewer 控件、加载和显示 PDF 文档、执行 PDF 窗口选项以及打印 PDF 文档。

设置项目

首先,在 Visual Studio 中创建一个新的 VB.NET Windows 窗体应用程序项目。确保已将 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

通过调用 获取打印文档 方法,可以启动当前加载的 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.9 刚刚发布

免费NuGet下载 总下载量: 10,746,704 查看许可证 >