跳至頁尾內容
產品比較

如何在C#中使用iTextSharp在PDF中新增頁碼

軟體開發行業總是在變化,使可靠的 .NET 報告工具比以往更重要。 每天,企業都在產生大量資料,正確利用這些資料對於做明智決策和建立報告至關重要。 特別是 C# 開發人員擁有豐富的報告工具可以使用,可以將它們整合到其應用程式中,從而讓他們輕鬆為 .NET 報告檢視器生成複雜的互動報告。

程式設計師使用強大而靈活的 C# 語言來建立多種應用程式,包括桌面、線上和移動端。 由於其性能、靈活性和廣泛的框架支援,它非常受歡迎。 C# 開發者可以使用 .NET 報告工具或報告設計師建立和編輯報告,並借助各種 .NET 報告解決方案以有意義的方式可視化和顯示資料,當涉及到報告時。 在本文中,我們將詳細研究 .NET 報告設計師的報告工具。

如何有效地使用 C# 報告工具?

  1. 為您的專案需求選擇最佳的 C# 報告工具。
  2. 在您的開發環境中安裝並設置您選擇的報告工具。
  3. 使用工具的 UI,通過包含文字框、表格和圖表,使用網站報告設計師建立報告。
  4. 將您的報告與資料庫或 API 綁定,允許您將其連接到資料源。
  5. 實施任何可能需要的計算或篩選進行資料處理。
  6. 為了確保報告的精確性和功能性,使用實際資料預覽和測試它們。
  7. 在將報告整合到您的 C# 程式中後,將其發布到現場環境。

Crystal Reports

SAP 建立了Crystal Reports,這是一個業務智慧工具,允許使用者從多種資料來源建立、可視化和分發報告。 藉助其靈活且使用者友好的報告建立介面,開發者可以輕鬆生成非常可調整的報告。 這些報告由於其對多種資料格式和整合選項的支援,已成為客戶希望高效使用其資料的首選工具。

主要特點

  • 多功能報告設計師:開發者可以使用 Crystal Reports 的使用者友好報告設計介面,通過拖放功能建立報告。 藉著許多格式選項,開發者可以製作視覺上吸引人的報告,這些報告是根據其個別需求定制的。 這些可能性包括圖表、圖形和表格。
  • 廣泛支援資料源:Crystal Reports 可用於廣泛的資料源,包括網路服務、XML 文件、Excel 試算表,以及 SQL Server、Oracle 和 MySQL 等資料庫。 由於其適應性,開發者可以輕鬆地將來自多個來源的資料納入其報告中。
  • 強大的資料處理功能:借助 Crystal Reports 的強大資料處理功能,開發者可以直接在報告中進行複雜的計算、篩選和排序任務。 使用者現在可以更有效地評估資料,並因此而得出有洞見的結論。

SQL Server Reporting Services (SSRS)

對 C# 開發者來說,SQL Server Reporting Services (SSRS) 是一個最重要的報告工具,它為建立、生產和分配互動報告提供了一個完整的平台。 SSRS 的功能豐富的功能套件和與 Microsoft 技術堆棧的流暢整合使開發者可以製作動態、引人入勝的報告,以增強業務資訊。 在本文中,我們將探討 SSRS 的功能以及 C# 程式設計師如何利用它們來改善其 .NET Framework 應用程式。

主要特點

  • 報告設計師:SSRS 附帶一個強大的報告設計工具,無縫整合到 Visual Studio 中。 使用此工具,開發者可以使用拖放介面設計和修改 .NET 報告。 藉助對廣泛資料可視化選項的支援,例如地圖、圖形和圖表,開發者可以製作視覺上吸引人的報告,這些報告是根據其個別需求定制的。
  • 多功能資料源:SSRS 方便存取廣泛的資料源,諸如 ODBC、OLE DB、SQL Server、Oracle 和 XML,使開發者能夠輕鬆將這些來源的資料納入其報告中。 組織可以利用其現有的資料基礎設施,而不必進行大規模的重組。
  • 參數化報告:開發者可以使用 SSRS 建立參數化報告,這些報告可以根據使用者的具體參數(如日期範圍、產品類別或地理區域)自定義。 這讓使用者可以動態地與報告互動,並獲得具體的見解以滿足其需求。

Stimulsoft Reports

值得注意的是,C# 開發者可以藉助Stimulsoft Reports,這是一個強大的報告工具集,在其網頁和桌面應用程式中建立、生成和顯示動態報告,擁有廣泛的功能套件。 開發者可以利用 Stimulsoft Reports 的簡單設計介面、豐富的資料可視化選項和強大的整合能力生成符合其獨特業務需求的複雜報告。 為了改善 C# 開發者的應用程式,我們將在本文中探討 Stimulsoft Reports 的功能和優勢。

主要特點

  • 改進的資料可視化:Stimulsoft Reports 賦予開發者設計美學上吸引人的報告的能力,這些報告具有互動圖形、圖表和儀表板,方便使用者詮釋複雜資料並提取有用見解。
  • 更佳的決策:Stimulsoft Reports 提供使用者快速和可靠資料的能力,使得決策者能基於最新消息做出選擇,這促進了業務的擴展和成功。
  • 節約時間和成本:通過簡化報告生成過程,Stimulsoft Reports 減少了所需的時間和勞力來生成、傳播或管理報告。 企業可以更有效地分配資源,從而節省成本。

Seal Report

Seal Report 是一個強大且適應性強的報告工具,賦予 C# 開發者在其應用程式中輕鬆生成動態和可定制報告的能力。 Seal Report 憑其中廣泛的功能套件、靈活的架構和開源性,為開發者提供建立符合其獨特業務需求的複雜報告的工具。 本文將介紹 Seal Report 的主要屬性及其優勢,以及 C# 程式設計師如何利用它來改善其應用程式。

主要特點

  • SQL 查詢為基礎的報告:Seal Report 構建在 SQL 查詢之上,為開發者提供利用他們現有的 SQL 知識生成報告的功能。 開發者可以編寫複雜的 SQL 查詢,從多個資料源中提取資料,並利用這些資料建立報告範本。
  • 動態資料可視化:Seal Report 為開發者提供多種資料可視化工具,例如樞紐分析表、表、圖和圖表,幫助他們以有趣和互動的方式顯示資料記錄。 報告允許使用者或最終使用者報告設計師進行互動,讓他們能夠深入分析具體的資料點並根據需要篩選資料。
  • 自動報告生成:Seal Report 賦予開發者自動建立和傳送報告的功能,確保且按預定時間提供報告給使用者。 這個功能對於需要定期報告更新的組織(如每日銷售報告或每月財務報表)特別有用。

IronPDF

使用IronPDF,一個強大的 .NET 報告工具,使終端使用者報告設計師能夠輕鬆地在 .NET Core 應用程式中建立和編輯報告。 提供一個網路報告生成器,允許使用者直接在網頁介面中建立和修改頁面報告,超越了傳統 .NET 報告工具。

開發者可以在 .NET Framework 中利用 IronPDF 的廣泛功能集找到符合其報告需求的高效解決方案,這些功能專為 .NET 報告檢視器而設計。 IronPDF 使在 .NET Visual Studio 應用程式中組織和生成報告變得更容易,其進階功能和使用者友好的介面都相輔相成。

對於尋求可靠的 .NET 報告解決方案的開發者,其與 .NET Framework 的完美銜接保證了合規性和順暢運行。 IronPDF 簡化了建立和閱讀有意義報告的過程,使開發者能夠輕鬆生成完美的報告元素。

IronPDF 提供了一個完整的 .NET 報告解決方案,包括:

  • 引人入勝的報告設計:通過網路報告設計師實現簡單的報告生成過程。
  • 編輯報告:您可以在程式中直接對現有報告進行修改。
  • 報告靈活性:以多種不同格式建立報告,包括 HTML、PDF 等。
  • 與其他 .NET Framework和 .NET Core 的相容性:流暢運作。
  • 報告檢視:為了啟用在您的 .NET 應用程式中檢視報告,將 IronPDF 與之整合。

IronPDF 被認為是滿足您 .NET 報告需求的全面解決方案,提供基於網路的設計、編輯和強大的報告功能,處於 .NET 生態中。

C# 報告工具(功能比較):圖 1 - IronPDF

主要特點

  • PDF 文件生成:借助 IronPDF,開發者可以使用 C# 程式碼動態建立 PDF 文件。 IronPDF 提供了一整套工具,無論是從資料庫中提取資料、格式化文字和圖片,還是新增互動組件,幫助您生成和共享看起來專業的報告。
  • HTML 到 PDF 轉換:.NET 開發者可以使用 IronPDF 快速輕鬆地將 HTML 內容(例如網頁、HTML 模板和使用者介面)轉換為 PDF 文件。 此功能使得可以無縫地將現有的基於網路的儀表板或報告轉換為 PDF 格式,而不犧牲佈局或質量。
  • 資料綁定和模板化:IronPDF 提供資料綁定和模板化功能,允許開發者通過將資料與為非技術性報告作者預先設計好的報告模板結合來動態生成定制報告。 開發者可以通過將外觀和內容分開來確保報告之間的一致性並加速報告生成過程。
  • 文件操作:IronPDF 提供了許多文件操作功能,例如頁面合併、分割和其他操縱功能。 因此,開發者可以輕鬆地重新組織頁面、從報告中增加或刪除部分,並將多個報告合併成一個文件。

要了解更多關於 IronPDF 文件的資訊,請參閱IronPDF 文件

安裝 IronPDF

首先,請確保您的專案中已安裝 IronPDF 程式庫。 在封裝管理器控制台中,輸入以下指令以使用 NuGet 包管理器安裝最佳報告工具:

Install-Package IronPdf

使用 IronPDF 報告引擎建立報告

IronPDF 一經安裝,您便可以開始建立報告的內容。 例如,我們製作一個簡單的 HTML 報告模板:

<!DOCTYPE html>
<html>
<head>
    <title>Sample Report</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 20px;
        }
        h1 {
            color: #333;
            text-align: center;
        }
        table {
            width: 100%;
            border-collapse: collapse;
        }
        th, td {
            border: 1px solid #333;
            padding: 8px;
            text-align: left;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>
    <h1>Sample Report</h1>
    <table>
        <thead>
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>Age</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>
                <td>John Doe</td>
                <td>30</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Jane Smith</td>
                <td>25</td>
            </tr>
        </tbody>
    </table>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
    <title>Sample Report</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 20px;
        }
        h1 {
            color: #333;
            text-align: center;
        }
        table {
            width: 100%;
            border-collapse: collapse;
        }
        th, td {
            border: 1px solid #333;
            padding: 8px;
            text-align: left;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>
    <h1>Sample Report</h1>
    <table>
        <thead>
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>Age</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>
                <td>John Doe</td>
                <td>30</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Jane Smith</td>
                <td>25</td>
            </tr>
        </tbody>
    </table>
</body>
</html>
HTML

C# 報告工具(功能比較):圖 2 - 活躍報告 HTML 輸出

接下來,撰寫 C# 程式碼來使用 IronPDF 製作 PDF 報告解決方案:

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Load HTML content from file
        var htmlPath = "report_template.html";

        // Create IronPdf Renderer
        var renderer = new HtmlToPdf();

        // Render HTML to PDF
        var pdfDocument = renderer.RenderHtmlFileAsPdf(htmlPath);

        // Save PDF to file
        pdfDocument.SaveAs("sample_report.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Load HTML content from file
        var htmlPath = "report_template.html";

        // Create IronPdf Renderer
        var renderer = new HtmlToPdf();

        // Render HTML to PDF
        var pdfDocument = renderer.RenderHtmlFileAsPdf(htmlPath);

        // Save PDF to file
        pdfDocument.SaveAs("sample_report.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Load HTML content from file
		Dim htmlPath = "report_template.html"

		' Create IronPdf Renderer
		Dim renderer = New HtmlToPdf()

		' Render HTML to PDF
		Dim pdfDocument = renderer.RenderHtmlFileAsPdf(htmlPath)

		' Save PDF to file
		pdfDocument.SaveAs("sample_report.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

在此範例中,"report_template.html"文件是載入 HTML 內容的來源。 這將被替換為您希望在報告中使用的實際 HTML 資訊。 然後,使用 IronPDF 的 HtmlToPdf 類將 HTML 內容呈現為 PDF 文件。 最後,稱為"sample_report.pdf"的文件包含生成的 PDF。

以下是從所給的 HTML 文件生成的報告。

C# 報告工具(功能比較):圖 3 - 報告功能 PDF 輸出

將 Bootstrap 5 與 IronPDF 用於產品展示

IronPDF 的 Chrome V8 渲染引擎擅長渲染 Bootstrap 5 產品目錄,非常適合生成 PDF 銷售材料、定價單和功能比較。 與像 Crystal Reports 或 SSRS 這樣需要複雜配置的傳統報告工具不同,IronPDF 直接處理現代 HTML/CSS,具有完整的 Bootstrap 支援。

using IronPdf;

var renderer = new ChromePdfRenderer();

string productCatalog = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .product-card {
            transition: all 0.3s;
            border: 1px solid #dee2e6;
        }
        .product-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }
        .price-tag {
            font-size: 2rem;
            font-weight: 700;
            color: #0d6efd;
        }
        .badge-custom {
            position: absolute;
            top: 10px;
            right: 10px;
        }
        @media print {
            .product-card { page-break-inside: avoid; }
        }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Product Catalog 2024</h1>
            <p class='lead text-muted'>Premium Software Solutions</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-success badge-custom'>Best Seller</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-primary'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📦</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Professional Edition</h5>
                        <p class='text-muted small mb-3'>Full-featured PDF toolkit for enterprise applications</p>
                        <div class='price-tag mb-3'>$2,999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Unlimited documents</li>
                            <li class='mb-2'>✓ Priority support</li>
                            <li class='mb-2'>✓ Advanced features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-primary badge-custom'>Popular</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-success'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📄</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Plus Edition</h5>
                        <p class='text-muted small mb-3'>Enhanced PDF generation with extra features</p>
                        <div class='price-tag mb-3'>$1,499</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Single developer</li>
                            <li class='mb-2'>✓ Standard support</li>
                            <li class='mb-2'>✓ Core features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-info badge-custom'>Starter</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-warning'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📝</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Lite Edition</h5>
                        <p class='text-muted small mb-3'>Essential PDF tools for small projects</p>
                        <div class='price-tag mb-3'>$999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Basic features</li>
                            <li class='mb-2'>✓ Email support</li>
                            <li class='mb-2'>✓ Documentation</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>
        </div>

        <div class='card mt-5 border-primary'>
            <div class='card-body'>
                <div class='row align-items-center'>
                    <div class='col-md-8'>
                        <h4>Need Enterprise Solutions?</h4>
                        <p class='mb-0'>Contact our sales team for custom pricing and unlimited deployment options.</p>
                    </div>
                    <div class='col-md-4 text-end'>
                        <button class='btn btn-primary btn-lg'>Contact Sales</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(productCatalog);
pdf.SaveAs("product-catalog.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string productCatalog = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .product-card {
            transition: all 0.3s;
            border: 1px solid #dee2e6;
        }
        .product-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }
        .price-tag {
            font-size: 2rem;
            font-weight: 700;
            color: #0d6efd;
        }
        .badge-custom {
            position: absolute;
            top: 10px;
            right: 10px;
        }
        @media print {
            .product-card { page-break-inside: avoid; }
        }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Product Catalog 2024</h1>
            <p class='lead text-muted'>Premium Software Solutions</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-success badge-custom'>Best Seller</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-primary'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📦</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Professional Edition</h5>
                        <p class='text-muted small mb-3'>Full-featured PDF toolkit for enterprise applications</p>
                        <div class='price-tag mb-3'>$2,999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Unlimited documents</li>
                            <li class='mb-2'>✓ Priority support</li>
                            <li class='mb-2'>✓ Advanced features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-primary badge-custom'>Popular</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-success'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📄</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Plus Edition</h5>
                        <p class='text-muted small mb-3'>Enhanced PDF generation with extra features</p>
                        <div class='price-tag mb-3'>$1,499</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Single developer</li>
                            <li class='mb-2'>✓ Standard support</li>
                            <li class='mb-2'>✓ Core features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-info badge-custom'>Starter</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-warning'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📝</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Lite Edition</h5>
                        <p class='text-muted small mb-3'>Essential PDF tools for small projects</p>
                        <div class='price-tag mb-3'>$999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Basic features</li>
                            <li class='mb-2'>✓ Email support</li>
                            <li class='mb-2'>✓ Documentation</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>
        </div>

        <div class='card mt-5 border-primary'>
            <div class='card-body'>
                <div class='row align-items-center'>
                    <div class='col-md-8'>
                        <h4>Need Enterprise Solutions?</h4>
                        <p class='mb-0'>Contact our sales team for custom pricing and unlimited deployment options.</p>
                    </div>
                    <div class='col-md-4 text-end'>
                        <button class='btn btn-primary btn-lg'>Contact Sales</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(productCatalog);
pdf.SaveAs("product-catalog.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

Dim productCatalog As String = "
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .product-card {
            transition: all 0.3s;
            border: 1px solid #dee2e6;
        }
        .product-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }
        .price-tag {
            font-size: 2rem;
            font-weight: 700;
            color: #0d6efd;
        }
        .badge-custom {
            position: absolute;
            top: 10px;
            right: 10px;
        }
        @media print {
            .product-card { page-break-inside: avoid; }
        }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-5'>
        <div class='text-center mb-5'>
            <h1 class='display-4'>Product Catalog 2024</h1>
            <p class='lead text-muted'>Premium Software Solutions</p>
        </div>

        <div class='row g-4'>
            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-success badge-custom'>Best Seller</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-primary'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📦</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Professional Edition</h5>
                        <p class='text-muted small mb-3'>Full-featured PDF toolkit for enterprise applications</p>
                        <div class='price-tag mb-3'>$2,999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Unlimited documents</li>
                            <li class='mb-2'>✓ Priority support</li>
                            <li class='mb-2'>✓ Advanced features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-primary badge-custom'>Popular</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-success'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📄</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Plus Edition</h5>
                        <p class='text-muted small mb-3'>Enhanced PDF generation with extra features</p>
                        <div class='price-tag mb-3'>$1,499</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Single developer</li>
                            <li class='mb-2'>✓ Standard support</li>
                            <li class='mb-2'>✓ Core features</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card product-card h-100 position-relative'>
                    <span class='badge bg-info badge-custom'>Starter</span>
                    <div class='card-body text-center'>
                        <div class='mb-3'>
                            <svg width='80' height='80' class='text-warning'>
                                <rect width='80' height='80' rx='10' fill='currentColor' opacity='0.1'/>
                                <text x='40' y='50' text-anchor='middle' fill='currentColor' font-size='40'>📝</text>
                            </svg>
                        </div>
                        <h5 class='card-title'>Lite Edition</h5>
                        <p class='text-muted small mb-3'>Essential PDF tools for small projects</p>
                        <div class='price-tag mb-3'>$999</div>
                        <ul class='list-unstyled text-start'>
                            <li class='mb-2'>✓ Basic features</li>
                            <li class='mb-2'>✓ Email support</li>
                            <li class='mb-2'>✓ Documentation</li>
                            <li class='mb-2'>✓ Perpetual license</li>
                        </ul>
                        <button class='btn btn-outline-primary w-100 mt-3'>Learn More</button>
                    </div>
                </div>
            </div>
        </div>

        <div class='card mt-5 border-primary'>
            <div class='card-body'>
                <div class='row align-items-center'>
                    <div class='col-md-8'>
                        <h4>Need Enterprise Solutions?</h4>
                        <p class='mb-0'>Contact our sales team for custom pricing and unlimited deployment options.</p>
                    </div>
                    <div class='col-md-4 text-end'>
                        <button class='btn btn-primary btn-lg'>Contact Sales</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>"

Dim pdf = renderer.RenderHtmlAsPdf(productCatalog)
pdf.SaveAs("product-catalog.pdf")
$vbLabelText   $csharpLabel

這段程式碼生成一個專業的產品目錄,包括定價卡片、功能徽章和懸停效果。 IronPDF 的 Chrome 渲染引擎保留了所有 Bootstrap 樣式,包括卡片佈局、陰影和響應式佈局網格 - 這些功能需要使用傳統報告工具如 Crystal Reports 或 SSRS 進行大量自定義開發。

與傳統報告工具的主要優勢:

  • 無需複雜的設計師配置
  • 現代的 Bootstrap 佈局開箱即用
  • 完整支援 CSS3 包括變形和動畫
  • 簡單的 HTML/CSS 工作流程,熟悉網頁開發者

關於 Bootstrap PDF 生成的全面資訊,請參見HTML TO PDF Bootstrap 指南

結論

總之,C# 開發者擁有廣泛的跨平台報告工具可用來滿足各種需求和偏好。 這些報告解決方案使開發者能夠充分利用他們的資料,並進行資料可視化,無論是用於建立財務報告、分析儀表板還是運營洞察。 通過在 C# 應用程式中整合全面的報告功能,開發者可以為客戶提供實際見解並促進知情決策的過程。得益於持續的技術進步,C# 報告工具的未來似乎更加充滿希望,這將幫助開發者維持在資料驅動應用程式激烈競爭世界中的優勢。

對於 C# 開發者來說,IronPDF 是工具箱中的有用補充,因為它提供了一個完整的解決方案,從程式內部建立出色的 PDF 報告。 IronPDF 的完整功能集、易於使用的 API 和流暢的整合能力使開發者能夠製作動態、具有美感的報告,以滿足各種使用者需求。 藉由利用 IronPDF 的力量來增強其應用程式中的報告功能,C# 開發者可以提供有吸引力的基於文件的體驗,從而創造業務價值和客戶滿意度。

IronPDF 的 Lite 版在 $999 包括一年軟體維護、升級選項和永久授權。 使用者可以在帶水印的試用期內在現實場景中評估產品。 了解更多關於IronPDF 的授權價格,並獲得免費試用

請注意Crystal Reports, SQL Server Reporting Services (SSRS), Stimulsoft Reports, and Seal Report are registered trademarks of their respective owner. 本網站不是由 Crystal Reports、SQL Server Reporting Services (SSRS)、Stimulsoft Reports 或 Seal Report 附屬、認可或贊助的。 所有產品名稱、徽標和品牌均為其各自所有者的財產。 比較僅供資訊參考,並反映了撰寫時的公開可用資訊。

常見問題

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

您可以使用IronPDF的RenderHtmlAsPdf方法將HTML字串轉換成PDF。也可以使用RenderHtmlFileAsPdf將HTML文件轉換為PDF。

IronPDF為.NET開發人員提供了哪些報表功能?

IronPDF提供了一個綜合解決方案,用於在.NET應用程式中生成和編輯PDF報告。它包括HTML轉PDF的轉換、資料綁定及模版文件生成的支持等功能。

使用C#報表工具的好處是什麼?

C#報表工具允許開發人員高效地建立、編輯、可視化及分發報告。它們支持資料處理,提供互動功能,與.NET應用程式無縫整合,提升決策及運營效率。

開發人員如何使用IronPDF在.NET中建立報表?

開發人員可以通過設計HTML模版,將其載入到C#中,然後使用IronPDF的渲染類將HTML轉換為PDF文件,這些文件可以被保存或分發。

Stimulsoft Reports在資料可視化方面有什麼獨特之處?

Stimulsoft Reports以其先進的資料可視化能力而聞名,允許開發人員建立互動且具有視覺吸引力的報表。它支持更好的決策,並提供友好的設計介面及廣泛的可視化選項。

SSRS如何與Visual Studio整合以生成報表?

SQL Server Reporting Services (SSRS) 與Visual Studio整合,提供了建立動態參數化報表的強大平台。它支持多種資料來源,允許C#開發人員高效生成及分發互動報告。

Seal Report在基於SQL查詢的報表中扮演什麼角色?

Seal Report利用SQL查詢生成可自定義的報表及動態資料可視化。它允許開發人員建立可互動的報表,並可定期更新,增強.NET應用程式內的報表能力。

為什麼在.NET中報表工具的無縫整合很重要?

與.NET應用程式的無縫整合非常重要,因為它允許開發人員高效地設計、編輯及查看各種格式的報表。這種整合支持增強的報告能力,使得更輕鬆地有效利用資料,以獲得商業洞察力。

Curtis Chau
技術作家

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

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

Iron 支援團隊

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