C# Excel 轉換為 PDF 教學指南

此頁面提供詳細的C#教學,教您如何將Excel文件轉換為PDF格式,包括代碼範例和步驟解說,適合初學者和進階使用者。

讓資訊整合更靈活

台灣熱門!AI+文檔+團隊Wiki+專案管理+日曆 — Notion帶來更靈活的工作方式!
免費使用

線上PDF文檔處理!

全球超過1億用戶實現文檔自動化處理。創建、編輯、簽署和分享PDF文件。簡便的表單填寫和文件管理功能,適合個人和企業使用。
免費試用

200+模板自動化工作流程

全球500強公司、22.5萬用戶都在用!全面整合專案處理、銷售、行銷、產品團隊工作流程!
免費使用

AI智能團隊協作

全球兩百萬團隊都在用!全面合作+生產力平台,高端智能工具,助你快速完成工作!
免費使用

“`html

介紹

在這篇教學中,我們將學習如何使用C#程式碼將Excel文件轉換為PDF格式。這在生成報表或分享資料時非常有用。我們將使用一個名叫EPPlus的第三方庫來處理Excel文件,並使用另一个名叫PdfSharp的第三方庫來生成PDF文件。

準備工作

在開始之前,我們需要安裝一些第三方庫。可以使用NuGet包管理器來安裝這些庫。

安裝EPPlus

在Visual Studio中打開Package Manager Console,然後執行以下指令來安裝EPPlus:

Install-Package EPPlus

安裝PdfSharp

在同一個Package Manager Console中,執行以下指令來安裝PdfSharp:

Install-Package PdfSharp

讀取Excel文件

首先,我們將使用EPPlus來讀取Excel文件。以下是如何用C#來實現這一點的範例程式碼:

using OfficeOpenXml;
using System.IO;

string excelFilePath = "path_to_your_excel_file.xlsx";
FileInfo excelFile = new FileInfo(excelFilePath);

using (ExcelPackage package = new ExcelPackage(excelFile))
{
    ExcelWorksheet worksheet = package.Workbook.Worksheets[0];
    // 在這裡可以操作worksheet,例如讀取數據
}

生成PDF文件

接下來,我們將使用PdfSharp來生成PDF文件,並將從Excel文件中讀取的數據寫入PDF中。以下是如何用C#來實現這一點的範例程式碼:

using PdfSharp.Pdf;
using PdfSharp.Drawing;
using System;

string pdfFilePath = "path_to_your_output_pdf.pdf";

PdfDocument document = new PdfDocument();
document.Info.Title = "Converted Excel to PDF";

PdfPage page = document.AddPage();
XGraphics gfx = XGraphics.FromPdfPage(page);
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);

gfx.DrawString("This is a test", font, XBrushes.Black,
    new XRect(0, 0, page.Width, page.Height),
    XStringFormats.TopLeft);

document.Save(pdfFilePath);
document.Close();

整合Excel和PDF操作

最後,我們將兩個部分的程式碼結合起來,從Excel文件中讀取數據,並將這些數據寫入PDF文件中。以下是完整的C#範例程式碼:

using OfficeOpenXml;
using PdfSharp.Pdf;
using PdfSharp.Drawing;
using System.IO;

string excelFilePath = "path_to_your_excel_file.xlsx";
string pdfFilePath = "path_to_your_output_pdf.pdf";

FileInfo excelFile = new FileInfo(excelFilePath);

using (ExcelPackage package = new ExcelPackage(excelFile))
{
    ExcelWorksheet worksheet = package.Workbook.Worksheets[0];
    int rowCount = worksheet.Dimension.Rows;
    int colCount = worksheet.Dimension.Columns;

    PdfDocument document = new PdfDocument();
    document.Info.Title = "Converted Excel to PDF";

    PdfPage page = document.AddPage();
    XGraphics gfx = XGraphics.FromPdfPage(page);
    XFont font = new XFont("Verdana", 12, XFontStyle.Regular);

    double yPoint = 0;
    for (int row = 1; row <= rowCount; row++)
    {
        for (int col = 1; col <= colCount; col++)
        {
            yPoint = row * 20;
            string text = worksheet.Cells[row, col].Text;
            gfx.DrawString(text, font, XBrushes.Black,
                new XRect(col * 100 - 100, yPoint, page.Width, page.Height),
                XStringFormats.TopLeft);
        }
    }

    document.Save(pdfFilePath);
    document.Close();
}

結論

在這篇教學中,我們學習了如何使用C#將Excel文件轉換為PDF格式。通過這個過程,我們使用了EPPlus來讀取Excel文件,並使用PdfSharp來生成和寫入PDF文件。希望通過這個教學,你可以更輕鬆地處理Excel到PDF的轉換需求。

```

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *