iTextSharp 是一個(gè)用于處理 PDF 文件的庫,它可以幫助你創(chuàng)建、修改和提取 PDF 文件中的內(nèi)容。在 C# 中,你可以使用 iTextSharp 來完成以下任務(wù):
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace CreatePdf
{
class Program
{
static void Main(string[] args)
{
// 創(chuàng)建一個(gè)文檔對象
Document document = new Document();
// 創(chuàng)建一個(gè) PDF 寫入器對象
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("example.pdf", FileMode.Create));
// 打開文檔
document.Open();
// 添加文本到文檔
document.Add(new Paragraph("Hello, World!"));
// 關(guān)閉文檔
document.Close();
}
}
}
修改 PDF 文件:你可以使用 iTextSharp 打開現(xiàn)有的 PDF 文件,然后修改其中的內(nèi)容,例如添加、刪除或修改文本、圖像等。
提取 PDF 文件內(nèi)容:iTextSharp 可以幫助你從 PDF 文件中提取文本、圖像等內(nèi)容,以便在其他應(yīng)用程序中使用。
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace ExtractPdfContent
{
class Program
{
static void Main(string[] args)
{
// 打開 PDF 文件
PdfReader reader = new PdfReader("example.pdf");
// 獲取文檔的總頁數(shù)
int numberOfPages = reader.NumberOfPages;
// 遍歷每一頁
for (int i = 1; i <= numberOfPages; i++)
{
// 獲取當(dāng)前頁的內(nèi)容
string pageContent = PdfTextExtractor.GetTextFromPage(reader, i);
// 輸出當(dāng)前頁的內(nèi)容
Console.WriteLine($"Page {i}:");
Console.WriteLine(pageContent);
}
// 關(guān)閉 PDF 文件
reader.Close();
}
}
}
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace MergePdfFiles
{
class Program
{
static void Main(string[] args)
{
// 創(chuàng)建一個(gè)文檔對象
Document document = new Document();
// 創(chuàng)建一個(gè) PDF 寫入器對象
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("merged_example.pdf", FileMode.Create));
// 打開文檔
document.Open();
// 添加第一個(gè) PDF 文件的內(nèi)容
AddPdfFile(document, writer, "example1.pdf");
// 添加第二個(gè) PDF 文件的內(nèi)容
AddPdfFile(document, writer, "example2.pdf");
// 關(guān)閉文檔
document.Close();
}
static void AddPdfFile(Document document, PdfWriter writer, string pdfFilePath)
{
// 打開 PDF 文件
PdfReader reader = new PdfReader(pdfFilePath);
// 獲取文檔的總頁數(shù)
int numberOfPages = reader.NumberOfPages;
// 遍歷每一頁
for (int i = 1; i <= numberOfPages; i++)
{
// 添加當(dāng)前頁到目標(biāo)文檔
PdfImportedPage importedPage = writer.GetImportedPage(reader, i);
document.Add(importedPage);
}
// 關(guān)閉 PDF 文件
reader.Close();
}
}
}
這些示例展示了 iTextSharp 在 C# 中的基本用法。你可以根據(jù)自己的需求進(jìn)一步擴(kuò)展和定制這些功能。