跳至頁尾內容
PDF工具

IronPDF與.NET的Winnovative PDF庫比較

Adobe設計了可攜式文件格式(PDF),旨在為文件提供文字和圖形格式。 需要第二個應用程式才能打開PDF文件。 在今天的文化中,PDF文件變得越來越相關。 可攜式文件格式文件在許多行業中用於發票和文件生產。 開發者使用PDF格式來幫助滿足他們客戶的需求,建立文件。 感謝當今提供的程式庫,建立PDF從未如此簡單。 為了確定在項目中使用哪個程式庫是市場上的最佳選擇,我們必須考慮如構建、閱讀和轉換等因素。

在本文中,我們將比較.NET元件的兩個最受歡迎的PDF轉換器程式庫; 這兩個程式庫是:

  • IronPDF
  • Winnovative

IronPDF和Winnovative是兩個可以在您的.NET應用程式中使用的程式庫,用於建立、閱讀和更新PDF文件,無論是在線上還是桌面應用程式。 這兩個程式庫現在可以進行比較,以查看哪個最適合我們的應用程式。 我們將首先檢查這兩個程式庫的功能,然後比較它們在轉換和處理PDF文件方面的性能水平。 這兩個程式庫都由.NET框架支援。

IronPDF功能

IronPDF是一個強大的PDF轉換器,可以處理幾乎任何瀏覽器可以處理的任務。 該.NET程式庫為開發人員提供了建立、閱讀和操縱PDF文件的方便。 IronPDF使用Chrome引擎將HTML轉換為PDF文件。 IronPDF支援HTML、ASPX、Razor HTML和MVC檢視等其他網頁元件。 IronPDF支援ASP.NET網應用程式和傳統Windows應用程式。 IronPDF還可用於製作引人注目的PDF文件。

IronPDF允許我們從HTML5、JavaScript、CSS和圖片建立PDF文件。 另外,可以在文件中加入頁眉和頁尾。 感謝IronPDF,我們可以輕鬆閱讀PDF文件。 IronPDF還包含一個強大的HTML到PDF轉換器,可以處理PDF文件,還有一個強大的PDF轉換引擎。

  • HTML、HTML5、ASPX和Razor/MVC檢視都是可以用來建立PDF文件的來源範例。 不僅HTML文件可以轉換為PDF,我們還可以將圖像文件轉換為PDF。
  • IronPDF可以幫助您建立互動式PDF文件,填寫和提交互動式表單,合併和拆分PDF文件,從PDF文件中擷取文字和圖像,在PDF文件中搜尋文字,將PDF頁面光柵化為圖像,將PDF轉換為HTML,並列印PDF文件
  • IronPDF可以從URL生成文件。 對於HTML登錄表單後的登錄,它還允許使用自定義網路登錄憑證、使用者代理、代理伺服器、Cookie、HTTP頭和表單變數。
  • IronPDF是允許您閱讀和填寫PDF文件的應用程式。
  • IronPDF能夠從文件中提取圖像。
  • IronPDF允許我們將頁眉、頁尾、文字、照片、書籤、水印等新增到文件中。
  • IronPDF使我們可以在新文件或現有文件中合併和拆分頁面。
  • 我們可以將文件轉換為PDF物件而不使用Acrobat檢視器。
  • 可以將CSS文件轉換為PDF文件。
  • CSS文件媒體型別文件可以轉換為文件。

Winnovative功能

Winnovative HTML-to-PDF Converter Library for .NET和.NET Core可用於將URL、HTML字串和流轉換為PDF文件、光柵圖像或SVG向量圖像,適用於任何.NET和.NET Core應用程式,包括ASP.NET、ASP.NET Core和MVC網站、Windows Forms和WPF應用程式以及Azure雲服務。

您可以使用HTML-to-PDF Converter for .NET作為一個通用工具來轉換網頁和HTML程式碼為PDF和圖片,也可以將其作為我們的.NET Reporting Toolkit的一部分,直接從ASP.NET頁面快速建立PDF報告,並利用ASP.NET控件的強大功能。

轉換器支援HTML標籤、CSS3的HTML5、SVG和Web字體、頁面中斷、媒體型別規則、重複的HTML表格、頁眉和頁尾、層次書籤、內容表、可填寫的PDF表單,以及支持頁碼的HTML頁眉和頁尾。

HTML-to-PDF Converter不依賴任何第三方軟體,且不需要特殊的伺服器設定即可運行。 相同的組件可在32位和64位環境中工作,並且可以實現拷貝伺服器部署。 程式庫與.NET 2.0、.NET 4.0及以後的框架,還有.NET Core 2.1、.NET Core 3.0及以後的運行時一起工作。

  • 轉換網頁、HTML字串或記憶體中的PDF文件。
  • 將HTML字串和網頁轉換為光柵圖像格式。
  • 支援如CSS3、SVG、Web字體所有的HTML5功能。
  • 支援如CSS3、SVG和Web字體的HTML轉PDF。
  • 在轉換過程中,您可以啟用或禁用JavaScript。
  • 將多個PDF文件合併為一個PDF文件。
  • 將PDF文件拆分為多個PDF文件。
  • 填寫PDF表單並將填寫後的文件保存為PDF文件。
  • 編輯現有的PDF文件。
  • 向準備好的PDF文件中新增圖像元素。

Bootstrap和現代CSS框架相容性

現代網頁應用程式越來越依賴於Bootstrap、Tailwind和Foundation等CSS框架進行快速UI開發。 從這些應用程式生成PDF時,維持佈局保真度對於專業文件質量至關重要。

IronPDF:原生Bootstrap 5支持

IronPDF的基於Chromium的渲染引擎無需配置即可全面支援現代CSS框架:

  • Bootstrap 5:全面支援所有元件的彈性盒模型和CSS網格佈局
  • Bootstrap 4:全面相容卡片組、導航欄和響應實用工具
  • Tailwind CSS:所有實用工具類別和響應修飾符正確渲染
  • CSS3功能:Flexbox、網格、變形、動畫和自定義屬性
  • Web字體:Google字體、Font Awesome和自定義@font-face聲明

已被現實範例驗證:Bootstrap主頁官方Bootstrap模板可像素完美準確地轉換為PDF。

程式碼範例:多列新聞稿佈局

using IronPdf;

var renderer = new ChromePdfRenderer();

string bootstrapNewsletter = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .article-image { width: 100%; height: 200px; object-fit: cover; }
    </style>
</head>
<body>
    <div class='container my-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Monthly Tech Newsletter</h1>
            <p class='lead text-muted'>March 2025 Edition</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <article class='card shadow-sm mb-4'>
                    <img src='https://via.placeholder.com/800x300' class='card-img-top article-image' alt='Featured'>
                    <div class='card-body'>
                        <span class='badge bg-primary mb-2'>Featured Article</span>
                        <h2 class='card-title'>The Future of Cloud Computing</h2>
                        <p class='card-text'>Explore the latest trends in cloud architecture and serverless computing that are reshaping how we build applications...</p>
                        <div class='d-flex justify-content-between align-items-center'>
                            <small class='text-muted'>By Sarah Johnson</small>
                            <small class='text-muted'>March 15, 2025</small>
                        </div>
                    </div>
                </article>

                <div class='row row-cols-1 row-cols-md-2 g-4'>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 2'>
                            <div class='card-body'>
                                <h5 class='card-title'>AI in Development</h5>
                                <p class='card-text'>How artificial intelligence is transforming software development workflows.</p>
                            </div>
                        </div>
                    </div>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 3'>
                            <div class='card-body'>
                                <h5 class='card-title'>Security Best Practices</h5>
                                <p class='card-text'>Essential security measures every developer should implement in 2025.</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card bg-light mb-4'>
                    <div class='card-body'>
                        <h5 class='card-title'>Quick Links</h5>
                        <ul class='list-unstyled'>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>API Documentation</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Tutorial Videos</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Community Forum</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>GitHub Repository</a></li>
                        </ul>
                    </div>
                </div>

                <div class='card border-primary'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>Subscribe</h5>
                        <p class='card-text'>Get the latest updates delivered to your inbox.</p>
                        <form>
                            <input type='email' class='form-control mb-2' placeholder='your@email.com'>
                            <button class='btn btn-primary w-100'>Subscribe Now</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapNewsletter);
pdf.SaveAs("newsletter.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string bootstrapNewsletter = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .article-image { width: 100%; height: 200px; object-fit: cover; }
    </style>
</head>
<body>
    <div class='container my-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Monthly Tech Newsletter</h1>
            <p class='lead text-muted'>March 2025 Edition</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <article class='card shadow-sm mb-4'>
                    <img src='https://via.placeholder.com/800x300' class='card-img-top article-image' alt='Featured'>
                    <div class='card-body'>
                        <span class='badge bg-primary mb-2'>Featured Article</span>
                        <h2 class='card-title'>The Future of Cloud Computing</h2>
                        <p class='card-text'>Explore the latest trends in cloud architecture and serverless computing that are reshaping how we build applications...</p>
                        <div class='d-flex justify-content-between align-items-center'>
                            <small class='text-muted'>By Sarah Johnson</small>
                            <small class='text-muted'>March 15, 2025</small>
                        </div>
                    </div>
                </article>

                <div class='row row-cols-1 row-cols-md-2 g-4'>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 2'>
                            <div class='card-body'>
                                <h5 class='card-title'>AI in Development</h5>
                                <p class='card-text'>How artificial intelligence is transforming software development workflows.</p>
                            </div>
                        </div>
                    </div>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 3'>
                            <div class='card-body'>
                                <h5 class='card-title'>Security Best Practices</h5>
                                <p class='card-text'>Essential security measures every developer should implement in 2025.</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card bg-light mb-4'>
                    <div class='card-body'>
                        <h5 class='card-title'>Quick Links</h5>
                        <ul class='list-unstyled'>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>API Documentation</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Tutorial Videos</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Community Forum</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>GitHub Repository</a></li>
                        </ul>
                    </div>
                </div>

                <div class='card border-primary'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>Subscribe</h5>
                        <p class='card-text'>Get the latest updates delivered to your inbox.</p>
                        <form>
                            <input type='email' class='form-control mb-2' placeholder='your@email.com'>
                            <button class='btn btn-primary w-100'>Subscribe Now</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapNewsletter);
pdf.SaveAs("newsletter.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

Dim bootstrapNewsletter As String = "
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .article-image { width: 100%; height: 200px; object-fit: cover; }
    </style>
</head>
<body>
    <div class='container my-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Monthly Tech Newsletter</h1>
            <p class='lead text-muted'>March 2025 Edition</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <article class='card shadow-sm mb-4'>
                    <img src='https://via.placeholder.com/800x300' class='card-img-top article-image' alt='Featured'>
                    <div class='card-body'>
                        <span class='badge bg-primary mb-2'>Featured Article</span>
                        <h2 class='card-title'>The Future of Cloud Computing</h2>
                        <p class='card-text'>Explore the latest trends in cloud architecture and serverless computing that are reshaping how we build applications...</p>
                        <div class='d-flex justify-content-between align-items-center'>
                            <small class='text-muted'>By Sarah Johnson</small>
                            <small class='text-muted'>March 15, 2025</small>
                        </div>
                    </div>
                </article>

                <div class='row row-cols-1 row-cols-md-2 g-4'>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 2'>
                            <div class='card-body'>
                                <h5 class='card-title'>AI in Development</h5>
                                <p class='card-text'>How artificial intelligence is transforming software development workflows.</p>
                            </div>
                        </div>
                    </div>
                    <div class='col'>
                        <div class='card h-100'>
                            <img src='https://via.placeholder.com/400x200' class='card-img-top' alt='Article 3'>
                            <div class='card-body'>
                                <h5 class='card-title'>Security Best Practices</h5>
                                <p class='card-text'>Essential security measures every developer should implement in 2025.</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card bg-light mb-4'>
                    <div class='card-body'>
                        <h5 class='card-title'>Quick Links</h5>
                        <ul class='list-unstyled'>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>API Documentation</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Tutorial Videos</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>Community Forum</a></li>
                            <li class='mb-2'><a href='#' class='text-decoration-none'>GitHub Repository</a></li>
                        </ul>
                    </div>
                </div>

                <div class='card border-primary'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>Subscribe</h5>
                        <p class='card-text'>Get the latest updates delivered to your inbox.</p>
                        <form>
                            <input type='email' class='form-control mb-2' placeholder='your@email.com'>
                            <button class='btn btn-primary w-100'>Subscribe Now</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>"

Dim pdf = renderer.RenderHtmlAsPdf(bootstrapNewsletter)
pdf.SaveAs("newsletter.pdf")
$vbLabelText   $csharpLabel

輸出:具有Bootstrap響應網格、卡片元件和Flexbox實用工具的專業新聞稿佈局——所有內容在PDF文件中都能準確保存。

Winnovative:有限度的Bootstrap支持

Winnovative的HTML到PDF轉換器使用自定義基於WebKit的渲染引擎,對現代CSS框架有特定限制:

  • HTML5和CSS3:聲稱支援但高級功能實現存在差距
  • Flexbox支援:部分實現,複雜的Bootstrap 4/5佈局可能無法正確顯示
  • CSS網格:對CSS網格佈局規範的支持有限或沒有
  • Bootstrap 3:通常在基於表格的佈局中運行良好
  • Bootstrap 4/5:需要測試Flexbox-heavy元件並可能需要解決方法

根據開發者反饋,Winnovative使用者經常遭遇:

  • Bootstrap導航欄存在佈局問題
  • 使用Flexbox的卡片元件無法正確對齊
  • 響應網格斷點在PDF輸出中未被尊重
  • 需要自訂CSS工作來達到正確的Bootstrap渲染效果

對開發的影響:使用Bootstrap 4+構建的應用程式可能需要大量CSS修改或回退到基於表格的佈局以達到與Winnovative可靠的PDF生成,從而增加開發和維護成本。

有關全面的Bootstrap相容性指南,請參閱Bootstrap & Flexbox CSS指南

在Visual Studio中建立一個新專案

打開Visual Studio軟體並轉到文件選單。 選擇"新專案",然後選擇"控制台應用程式"。 在本文中,我們將使用控制台應用程式生成PDF文件。

Winnovative Html To Pdf Alternatives 1 related to 在Visual Studio中建立一個新專案

在適當的文字框中輸入專案名稱並選擇文件路徑。 然後,點擊建立按鈕並選擇所需的.NET Framework,如下圖所示。

Winnovative Html To Pdf Alternatives 2 related to 在Visual Studio中建立一個新專案

Visual Studio專案將生成選定應用程式的結構,並且如果您選擇控制台、Windows和網頁應用程式,它將打開Program.cs文件,您可以在其中輸入程式碼並構建/運行應用程式。

Winnovative Html To Pdf Alternatives 3 related to 在Visual Studio中建立一個新專案

接下來,我們可以新增程式庫來測試程式碼。

安裝 IronPDF 程式庫

IronPDF程式庫可以通過四種方式下載和安裝。

這些是:

  • 使用Visual Studio。
  • 使用Visual Studio命令行。
  • 從NuGet網站直接下載。
  • 從IronPDF網站直接下載。

使用Visual Studio

Visual Studio軟體提供了NuGet Package Manager選項,可以直接將軟體包安裝到解決方案中。 下面的截圖顯示了如何打開NuGet套件管理器。

Winnovative Html To Pdf Alternatives 4 related to 使用Visual Studio

它提供了搜索框,可以顯示來自NuGet網站的套件列表。在包管理器中,我們需要搜索關鍵字"IronPDF",如下面的螢幕截圖所示。

Winnovative Html To Pdf Alternatives 5 related to 使用Visual Studio

在上述圖片中,我們可以看到相關搜索項目的列表。 我們需要選擇所需的選項將套件安裝到解決方案中。

使用Visual Studio命令行

在Visual Studio中,轉到工具 -> NuGet Package Manager -> Package Manager Console

在套件管理器控制台選項卡中輸入以下行:

Install-Package IronPdf

現在,該包將下載/安裝到當前專案中並準備就緒使用。

Winnovative Html To Pdf Alternatives 6 related to 使用Visual Studio命令行

從NuGet網站直接下載

第三種方式是從網站直接下載NuGet包。

  • 瀏覽NuGet IronPDF包頁面
  • 從右側選單中選擇下載套件選項。
  • 雙擊下載的包。 它將自動安裝。
  • 接下來,重新載入解決方案並在專案中開始使用它。

從IronPDF網站直接下載

IronPDF網站直接下載最新的包。 下載後,按照以下步驟將包新增到項目中。

  • 右擊方案視窗中的項目。
  • 然後,選擇"新增引用"選項並瀏覽已下載參考的路徑。
  • 接下來,點擊OK以新增引用。

安裝Winnovative程式庫

Winnovative程式庫可以通過四種方式下載和安裝。

這些是:

  • 使用Visual Studio。
  • 使用Visual Studio命令行。
  • 從NuGet網站直接下載。
  • 從Winnovative網站直接下載。

使用Visual Studio

如上所述,進入NuGet包管理器並使用關鍵字"Winnovative"進行搜索。 它將顯示以下相關結果列表:

Winnovative Html To Pdf Alternatives 7 related to 使用Visual Studio

在使用Winnovative時,我們需要安裝不同的程式庫來使用所有功能。 選擇所需的並點擊安裝,它將安裝該程式庫到專案中。

需要安裝Winnovative.PdfToText.NetCore來閱讀PDF並將其轉換成文字。

使用Visual Studio命令行

在Visual Studio中,轉到工具 -> NuGet Package Manager -> Package Manager Console

在包管理器控制台選項卡中為每個需要的功能輸入以下行:

Install-Package Winnovative.HtmlToPdf.NetCore
Install-Package Winnovative.PdfToText.NetCore
Install-Package Winnovative.HtmlToPdf.NetCore
Install-Package Winnovative.PdfToText.NetCore
SHELL

現在,該包將下載/安裝到當前專案中並準備就緒使用。

Winnovative Html To Pdf Alternatives 8 related to 使用Visual Studio命令行

從NuGet網站直接下載

第三種方式是從網站直接下載NuGet包。

  • 瀏覽NuGet Winnovative包搜索結果
  • 選擇所需的包,將重定向到另一個網站。
  • 然後,從右側選單中選擇下載包選項。
  • 雙擊下載的包。 它將自動安裝。
  • 下一步,重新載入解決方案並開始在項目中使用它。

從Winnovative網站直接下載

Winnovative網站直接下載最新的包。 下載後,按照以下步驟將包新增到項目中。

  • 右擊方案視窗中的項目。
  • 然後,選擇"新增引用"選項並瀏覽已下載參考的路徑。
  • 接下來,點擊OK以新增引用。

從URL建立PDF文件

這兩個PDF程式庫幫助我們將HTML頁面轉換為時尚的PDF。 讓我們看看如何建立PDF文件。

使用IronPDF

IronPDF使我們能夠快速建立PDF文件。 它將建立HTML文件並從URL將其轉換為PDF文件。 IronPDF中內建的Chrome瀏覽器將協助我們下載HTML字串。

以下步驟使建立PDF文件變得簡單易行。

// Create a ChromePdfRenderer instance
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Convert a webpage into a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, chain the methods for brevity
var Renderer = new IronPdf.ChromePdfRenderer()
                .RenderUrlAsPdf("https://www.google.co.in/")
                .SaveAs("result.pdf");
// Create a ChromePdfRenderer instance
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Convert a webpage into a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, chain the methods for brevity
var Renderer = new IronPdf.ChromePdfRenderer()
                .RenderUrlAsPdf("https://www.google.co.in/")
                .SaveAs("result.pdf");
' Create a ChromePdfRenderer instance
Dim Renderer As New IronPdf.ChromePdfRenderer()

' Convert a webpage into a PDF and save it
Dim Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/")
Pdf.SaveAs("result.pdf")

' Alternatively, chain the methods for brevity
Dim Renderer = (New IronPdf.ChromePdfRenderer()).RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

在上面的例子中,我們有兩個選擇來將連結轉換為文件。 通過構建IronPDF物件建立文件是一種方法,而建立RenderUrlAsPdf物件是另一種方法。

上述意味著我們可以使用RenderUrlAsPdf將其轉換為文件。 只需提供保存位置和連結。

使用Winnovative

在Winnovative程式庫的幫助下,我們能夠將PDF文件轉換。 Winnovative程式庫包含內建的瀏覽器,將協助我們從URL下載HTML並將其轉換為PDF。

下面是下載並將HTML字串轉換為PDF文件的程式碼:

// Create a HtmlToPdfConverter instance
HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

// Download HTML from URL and convert to PDF
htmlToPdfConverter.ConvertUrlToFile("https://www.google.co.in/", "result1.pdf");
// Create a HtmlToPdfConverter instance
HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

// Download HTML from URL and convert to PDF
htmlToPdfConverter.ConvertUrlToFile("https://www.google.co.in/", "result1.pdf");
' Create a HtmlToPdfConverter instance
Dim htmlToPdfConverter As New HtmlToPdfConverter()

' Download HTML from URL and convert to PDF
htmlToPdfConverter.ConvertUrlToFile("https://www.google.co.in/", "result1.pdf")
$vbLabelText   $csharpLabel

首先,我們為HtmlToPdfConverter建立一個物件,它允許我們使用選項列表將網頁URL轉換為PDF。 ConvertUrlToFile是幫助我們從URL下載資源並將其轉換為PDF文件的方法。我們需要傳遞兩個參數:URL和PDF文件位置——兩者都是必需的。

下圖是IronPDF和Winnovative之間的比較。

Winnovative Html To Pdf Alternatives 9 related to 使用Winnovative

從HTML字串建立PDF

存在的HTML頁面或HTML程式碼可以使用IronPDF和Winnovative轉換為PDF。他們將幫助我們製作高品質PDF文件。

使用IronPDF

我們可以借助IronPDF將HTML字串轉換為PDF文件。 下面是一個將HTML字串轉換為文件的範例。 它還具有將任何HTML標籤轉換為PDF文件的能力。

// Convert HTML string to a PDF document and save
var Renderer = new IronPdf.ChromePdfRenderer()
               .RenderHtmlAsPdf("<h1>Hello world!!</h1>")
               .SaveAs("result.pdf");
// Convert HTML string to a PDF document and save
var Renderer = new IronPdf.ChromePdfRenderer()
               .RenderHtmlAsPdf("<h1>Hello world!!</h1>")
               .SaveAs("result.pdf");
' Convert HTML string to a PDF document and save
Dim Renderer = (New IronPdf.ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

伴隨的範例顯示了如何使用RenderHtmlAsPdf將HTML字串翻譯。 此外,將HTML轉換為字串的函式可以接受任意數量的HTML程式碼。 使用SaveAs函式,在獲得字串後我們可以保存文件。

使用Winnovative

我們可以使用Winnovative程式庫將HTML字串轉換為PDF文件。 使用簡單明了。

下面是從HTML字串建立PDF的範例程式碼。

// Create a HtmlToPdfConverter instance
HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

// Convert HTML string to a PDF and save
htmlToPdfConverter.ConvertHtmlToFile("<h1>Hello world!!</h1>", "", "result1.pdf");
// Create a HtmlToPdfConverter instance
HtmlToPdfConverter htmlToPdfConverter = new HtmlToPdfConverter();

// Convert HTML string to a PDF and save
htmlToPdfConverter.ConvertHtmlToFile("<h1>Hello world!!</h1>", "", "result1.pdf");
' Create a HtmlToPdfConverter instance
Dim htmlToPdfConverter As New HtmlToPdfConverter()

' Convert HTML string to a PDF and save
htmlToPdfConverter.ConvertHtmlToFile("<h1>Hello world!!</h1>", "", "result1.pdf")
$vbLabelText   $csharpLabel

首先,我們為HtmlToPdfConverter建立一個物件,它允許我們使用選項列表將HTML轉換為PDF。 ConvertHtmlToFile是幫助我們將HTML字串轉換為PDF檔案的方法。我們應該傳遞三個參數:HTML字串、源URI(可選)和PDF檔案位置。 HTML字串和文件位置是必需參數。

下圖是IronPDF和Winnovative之間的對比結果。

Winnovative Html To Pdf Alternatives 10 related to 使用Winnovative

閱讀PDF文件

在IronPDF和Winnovative程式庫的幫助下,我們還可以閱讀PDF文件。 文件可以輕鬆轉換為文字字串。 為了提取文字,我們可以使用兩種技術之一。 第一種方法將所有頁面資料作為單個字串返回。 第二種技術是逐頁獲取資料,這是一個兩個程式庫都支持的方法。

使用IronPDF

IronPDF程式允許我們閱讀現有的PDF文件並將PDF頁面轉換為PDF物件。 下面是一個顯示如何使用IronPDF閱讀現有PDF的範例。

獲取所有字串的第一種方法顯示如下。

// Load a PDF document
var pdfDocument = IronPdf.PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string allText = pdfDocument.ExtractAllText();
// Load a PDF document
var pdfDocument = IronPdf.PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string allText = pdfDocument.ExtractAllText();
' Load a PDF document
Dim pdfDocument = IronPdf.PdfDocument.FromFile("result.pdf")

' Extract all text from the PDF
Dim allText As String = pdfDocument.ExtractAllText()
$vbLabelText   $csharpLabel

FromFile方法被用來從現有文件中讀取PDF並將其轉換為PDF文件物件,如上面的程式碼所示。 我們可以使用該物件閱讀可在PDF頁面上獲得的文字和圖像。 該物件有一個稱為ExtractAllText的方法,該方法將PDF文件中的所有文字提取到字串中。

使用Winnovative

此外,Winnovative幫助我們閱讀現有的PDF文件。 它也支持上述的兩種方法。

下面是將所有PDF資料轉換為單字串的第一種方法的樣例程式碼。

// Load a document and count the number of pages
var pdfDoc = new PdfToText.Document("result1.pdf");
PdfToTextConverter pdfToTextConverter = new PdfToTextConverter();

// Convert PDF pages to text
string extractedText = pdfToTextConverter.ConvertToText("result1.pdf", 1, pdfDoc.Pages.Count);
// Load a document and count the number of pages
var pdfDoc = new PdfToText.Document("result1.pdf");
PdfToTextConverter pdfToTextConverter = new PdfToTextConverter();

// Convert PDF pages to text
string extractedText = pdfToTextConverter.ConvertToText("result1.pdf", 1, pdfDoc.Pages.Count);
' Load a document and count the number of pages
Dim pdfDoc = New PdfToText.Document("result1.pdf")
Dim pdfToTextConverter As New PdfToTextConverter()

' Convert PDF pages to text
Dim extractedText As String = pdfToTextConverter.ConvertToText("result1.pdf", 1, pdfDoc.Pages.Count)
$vbLabelText   $csharpLabel

在上面的程式碼中,顯示我們正在讀取現有文件,將其轉換為物件以獲取頁數和其他文件相關資訊。 在此之後,我們使用PdfToTextConverter程式庫並為此程式庫建立一個物件。 通過建立物件,我們可以存取所有可用的方法。 我們還使用了一個名為ConvertToText的方法,該方法幫助我們將PDF頁面轉換為文字。 我們需要傳遞三個參數,分別是文件路徑、開始頁面和結束頁面。 所有參數都是必需的。

下圖是IronPDF和Winnovative之間的對比結果。

Winnovative Html To Pdf Alternatives 11 related to 使用Winnovative

授權

IronPDF也是一個程式庫,並且為開發人員提供免費授權。 每當我們在生產環境中使用IronPDF時:Lite包從$999開始,無需持續成本。 以及SaaS和OEM重新發布。 所有授權包含30天退款保證,一年的產品支援和更新,有效期適用於開發者/分段/生產環境,並且也是永久授權(一次性購買)。 此外,還提供某些限時免費的授權。 查看完整的價格結構和IronPDF授權說明。 IronPDF還提供免版稅授權再分發覆蓋。

Winnovative同時提供免費和付費授權。 它提供免費開發者授權。 每個程式庫都有不同的價格範圍。 要了解有關授權的更多資訊,請查看Winnovative價格

總結

IronPDF是使用最廣泛的PDF轉換器程式庫之一。 它幫助我們生成、閱讀、操縱和格式化PDF文件。 IronPDF有一個瀏覽器引擎,可以幫助將給定的URL轉換為PDF檔案。它還允許我們將CSS新增到HTML字串並將其轉換為PDF文件。 此外,我們還可以藉助IronPDF程式庫填寫PDF表單。 IronPDF的所有功能都包括在一個程式庫中。

Winnovative PDF程式庫幫助我們生成、閱讀和操作PDF文件。 我們也可以從URL或HTML字串將文件轉換為PDF。 在HTML字串中,我們可以新增CSS。 Winnovative的所有功能已分成多個程式庫。 我們需要下載特定的程式庫才能存取特定功能。

IronPDF提供多種價格結構。 IronPDF的基本價格從$999開始。 產品支援和更新需支付一年費用。 IronPDF為額外的費用提供免版稅再分發覆蓋。Winnovative PDF Library也提供不同的價格結構。 有關最新的Winnovative價格,請直接查看Winnovative網站

總結來說,我們建議使用IronPDF,因為它的卓越性能以及為使用可攜式文件格式的開發者所提供的大量功能。 它還提供出色的支持和文件,使我們能充分利用IronPDF的所有功能。 與Winnovative相比,它也更加具有成本效益。

請注意Winnovative是其各自所有者的註冊商標。 本網站與Winnovative無關,也未受到其認可或贊助。所有產品名稱、徽標和商標均為其各自所有者的財產。 比較僅供參考,反映撰寫時公開可用的資訊。

常見問題

我如何在 C# 中將 HTML 轉換為 PDF?

您可以使用 IronPDF 的 RenderHtmlAsPdf 方法將 HTML 字串轉換為 PDF 文件。它還支持將 HTML 文件和網頁 URL 轉換為 PDF。

IronPDF 相較於 Winnovative 的主要功能有哪些?

IronPDF 提供單一程式庫,具備全面的功能,包括合併、拆分以及從 PDF 提取文字和圖片。它使用內建的 Chrome 引擎進行 HTML 到 PDF 的轉換。Winnovative 則需要多個程式庫處理不同的功能,並支持 HTML5 及可填寫的 PDF 表單。

是否可以使用 IronPDF 從 PDF 提取文字?

是的,IronPDF 提供 ExtractAllText 方法,允許開發者高效地從 PDF 文件中提取所有文字內容。

IronPDF 的授權選項有哪些?

IronPDF 提供靈活的授權選項,包括不需持續費用的基本 Lite 授權。它提供多種價格方案以滿足不同開發者的需求,使其具成本效益。

我需要任何第三方軟體來使用 IronPDF 嗎?

不需要,IronPDF 不需任何第三方軟體。它使用自帶的 Chrome 引擎進行 HTML 到 PDF 轉換,確保安裝與使用流程的簡化。

如何在 .NET 專案中安裝 IronPDF?

IronPDF 可以通過 Visual Studio、Visual Studio 命令列或直接從 NuGet 安裝在 .NET 專案中。設置過程簡便,無需額外軟體。

IronPDF 支援哪些環境?

IronPDF 支援多種環境,包括 .NET Framework 和 .NET Core。它與 ASP.NET Web 應用和 Windows 應用無縫運行,提供靈活的部署選擇。

IronPDF 可以製作互動式 PDF 文件嗎?

可以,IronPDF 支持建立互動式 PDF 文件。開發者可以在 PDF 中填寫表單、新增註釋和包含互動元素。

using IronPDF 時,常見的故障排除情況是什麼?

常見的故障排除情況包括確保安裝正確版本的 .NET Framework,確認所有的依賴項正確引用,以及檢查將被轉換的 HTML 內容的準確性。

IronPDF 和 Winnovative 如何處理 PDF 表單填寫?

IronPDF 允許開發者高效建立和填寫互動式 PDF 表單。Winnovative 也支持表單填寫,提供保存在和處理可填寫的 PDF 表單的工具。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話