在.NET框架使用C#實(shí)現(xiàn)PDF文件轉(zhuǎn)為HTML格式的步驟
引言
HTML作為一種開放標(biāo)準(zhǔn)的網(wǎng)頁標(biāo)記語言,具有跨平臺、易于瀏覽和搜索引擎友好的特性,使得內(nèi)容能夠在多種設(shè)備上輕松訪問并優(yōu)化了在線分享與互動。通過將PDF文件轉(zhuǎn)換為HTML格式,我們可以更方便地在瀏覽器中展示PDF文檔內(nèi)容,同時(shí)也更容易集成到更復(fù)雜的HTML頁面中。使用C#在.NET框架下我們可以實(shí)現(xiàn)更快的轉(zhuǎn)換過程,以及轉(zhuǎn)換的自動化進(jìn)行。本文將介紹如何在.NET框架使用C#將PDF文件轉(zhuǎn)換為HTML格式。
文所使用的方法需要用到免費(fèi)的Free Spire.PDF for .NET,NuGet:Install-Package FreeSpire.PDF。
文中所用的示例PDF文檔:

用C#直接轉(zhuǎn)換PDF文件為HTML格式
我們可以使用PdfDocument.LoadFromFile()方法從文件載入PDF文檔,然后再使用PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)方法將PDF文檔直接轉(zhuǎn)換為HTML文件并保存。以下是操作步驟示例:
- 導(dǎo)入所需模塊。
- 創(chuàng)建
PdfDocument實(shí)例,并使用PdfDocument.LoadFromFile()方法從文件載入PDF文檔。 - 使用
PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)方法將PDF文檔直接轉(zhuǎn)換為HTML格式并保存到文件。 - 釋放資源。
代碼示例
using Spire.Pdf;
namespace PDFToHTML
{
class Program
{
static void Main(string[] args)
{
// 創(chuàng)建PdfDocument實(shí)例
PdfDocument pdf = new PdfDocument();
// 載入PDF文件
pdf.LoadFromFile("Sample.pdf");
// 將PDF轉(zhuǎn)換為HTML并保存
pdf.SaveToFile("output/PDFToHTML.html", FileFormat.HTML);
// 釋放資源
pdf.Dispose();
}
}
}
運(yùn)行結(jié)果

轉(zhuǎn)換PDF到HTML時(shí)自定義轉(zhuǎn)換選項(xiàng)
在載入 PDF 文檔后,可以通過訪問文檔的PdfDocument.ConvertOptions屬性獲取PdfConvertOptions實(shí)例。隨后,可調(diào)用PdfConvertOptions.SetPdfToHtmlOptions()方法設(shè)置轉(zhuǎn)換選項(xiàng)。該方法接受以下四個(gè)參數(shù):
- bool: 是否將 SVG 嵌入到 HTML 中;
- bool: 是否將圖像嵌入到 HTML 中;
- int: 單文件最大頁數(shù);
- bool: 是否使用高質(zhì)量嵌入 SVG。
以下是具體操作步驟的示例:
- 導(dǎo)入所需模塊。
- 創(chuàng)建
PdfDocument實(shí)例,并使用PdfDocument.LoadFromFile()方法從文件載入PDF文檔。 - 訪問文檔的
PdfDocument.ConvertOptions屬性獲取PdfConvertOptions實(shí)例。 - 調(diào)用
PdfConvertOptions.SetPdfToHtmlOptions()方法設(shè)置轉(zhuǎn)換選項(xiàng)。 - 使用
PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)方法將PDF文檔轉(zhuǎn)換為HTML格式并保存到文件。 - 釋放資源。
代碼示例
using Spire.Pdf;
namespace PDFToHTML
{
class Program
{
static void Main(string[] args)
{
// 創(chuàng)建PdfDocument實(shí)例
PdfDocument pdf = new PdfDocument();
// 載入PDF文件
pdf.LoadFromFile("Sample.pdf");
// 訪問ConvertOptions屬性
PdfConvertOptions toHtmlOptions = pdf.ConvertOptions;
// 設(shè)置轉(zhuǎn)換HTML選項(xiàng)
toHtmlOptions.SetPdfToHtmlOptions(false, true, 5, false);
// 將PDF轉(zhuǎn)換為HTML并保存
pdf.SaveToFile("output/PDFToHTML.html", FileFormat.HTML);
// 釋放資源
pdf.Dispose();
}
}
}
運(yùn)行結(jié)果

在字節(jié)流中實(shí)現(xiàn)PDF到HTML的轉(zhuǎn)換
除了從磁盤載入PDF文件轉(zhuǎn)換為HTML格式外,我們還可以使用PdfDocument.LoadFromStream()方法直接載入流中的PDF文檔,然后使用PdfDocument.SaveToStream(Stream: stream, FileFormat.HTML)將PDF文檔轉(zhuǎn)換為HTML文件流。以下是操作步驟示例:
- 導(dǎo)入所需模塊。
- 創(chuàng)建
MemoryStream實(shí)例或使用現(xiàn)有實(shí)例。 - 創(chuàng)建
PdfDocument實(shí)例,使用PdfDocument.LoadFromStream()從流載入PDF文檔。 - 使用
PdfDocument.SaveToStream(Stream: stream, FileFormat.HTML)將PDF文檔轉(zhuǎn)換為HTML文件流。 - 將流寫入文件或根據(jù)需要進(jìn)行其他操作。
- 釋放資源。
代碼示例
using Spire.Pdf;
namespace PDFToHTML
{
class Program
{
static void Main(string[] args)
{
// 創(chuàng)建Stream實(shí)例或使用現(xiàn)有實(shí)例
MemoryStream stream = new MemoryStream();
File.OpenRead("Sample.pdf").CopyTo(stream);
// 創(chuàng)建PdfDocument實(shí)例
PdfDocument pdf = new PdfDocument();
// 從流中載入PDF文件
pdf.LoadFromStream(stream);
// 將PDF轉(zhuǎn)換為HTML并保存到流
pdf.SaveToStream(stream, FileFormat.HTML);
// 將流寫入文件或根據(jù)需要進(jìn)行其他操作
File.WriteAllBytes("output/PDFToHTMLStream.html", stream.ToArray());
// 釋放資源
pdf.Dispose();
}
}
}
運(yùn)行結(jié)果

本文介紹如何在.NET框架使用C#將PDF轉(zhuǎn)換為HTML格式,提供步驟介紹及代碼示例。
到此這篇關(guān)于在.NET框架使用C#實(shí)現(xiàn)PDF文件轉(zhuǎn)為HTML格式的步驟的文章就介紹到這了,更多相關(guān).NET C#實(shí)現(xiàn)PDF轉(zhuǎn)HTML內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Unity 實(shí)現(xiàn)給物體動態(tài)添加事件
這篇文章主要介紹了Unity 實(shí)現(xiàn)給物體動態(tài)添加事件的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
如何用C#實(shí)現(xiàn)SAGA分布式事務(wù)
大家好,本篇文章主要講的是如何用C#實(shí)現(xiàn)SAGA分布式事務(wù),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2022-01-01
C# LiteDB處理時(shí)間序列數(shù)據(jù)的高性能解決方案
LiteDB作為.NET生態(tài)下的輕量級嵌入式NoSQL數(shù)據(jù)庫,一直是時(shí)間序列處理的優(yōu)選方案,本文將為大家大家簡單介紹一下LiteDB處理時(shí)間序列數(shù)據(jù)的高性能解決方案,希望對大家有所幫助2025-08-08
時(shí)間戳與時(shí)間相互轉(zhuǎn)換(php .net精確到毫秒)
本文給大家分享的時(shí)間戳與時(shí)間相互轉(zhuǎn)換(php .net精確到毫秒) ,感興趣的朋友一起學(xué)習(xí)吧2015-09-09
關(guān)于C#生成MongoDB中ObjectId的實(shí)現(xiàn)方法
本篇文章小編為大家介紹,關(guān)于C#生成MongoDB中ObjectId的實(shí)現(xiàn)方法。需要的朋友參考下2013-04-04
C#動態(tài)創(chuàng)建Access數(shù)據(jù)庫及表的方法
這篇文章主要介紹了C#動態(tài)創(chuàng)建Access數(shù)據(jù)庫及表的方法,以實(shí)例形式分析了創(chuàng)建access數(shù)據(jù)庫及在access數(shù)據(jù)庫中建表的完整過程,是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12

