📜  编辑 pdf itextsharip - C# (1)

📅  最后修改于: 2023-12-03 15:27:38.344000             🧑  作者: Mango

编辑 PDF 文件 - 使用 iTextSharp 和 C#

iTextSharp 是一个流行的 C# 库,用于创建和编辑 PDF 文件。该库提供了丰富的 API,可以用于添加文本、图像、表格、图形和其他元素到 PDF 文件中。本文将介绍如何使用 iTextSharp 编辑 PDF 文件。

安装 iTextSharp

iTextSharp 可以通过 NuGet 包管理器安装。在 Visual Studio 中,打开“解决方案资源管理器”,右键单击项目并选择“管理 NuGet 包”。在“浏览”选项卡中搜索“iTextSharp”,然后单击“安装”按钮。

PM> Install-Package iTextSharp
创建 PDF 文档

要创建新的 PDF 文档,请使用 Document 对象。可以设置页面大小、边框、页眉、页脚和其他属性。示例代码如下:

using iTextSharp.text;
using iTextSharp.text.pdf;

// 创建 PDF 文档
Document doc = new Document();

// 设置页面大小
doc.SetPageSize(PageSize.A4);

// 添加页眉和页脚
doc.AddHeader("Header", "This is the header");
doc.AddFooter("Footer", "This is the footer");

// 创建 PDF 编写器
PdfWriter.GetInstance(doc, new FileStream("output.pdf", FileMode.Create));

// 打开文档
doc.Open();

// 在文档中添加内容
doc.Add(new Paragraph("Hello, World!"));

// 关闭文档
doc.Close();
添加文本和图像

要在 PDF 文件中添加文本,请使用 Paragraph 对象。可以设置字体、颜色、对齐方式、缩进和其他属性。示例代码如下:

// 创建 PDF 文档
Document doc = new Document();
PdfWriter.GetInstance(doc, new FileStream("output.pdf", FileMode.Create));
doc.Open();

// 添加文本
Paragraph p = new Paragraph("This is some text.");
p.Alignment = Element.ALIGN_CENTER;
p.Font = FontFactory.GetFont(FontFactory.HELVETICA, 12, Font.BOLD);
doc.Add(p);

// 添加图像
Image img = Image.GetInstance("image.jpg");
img.ScaleToFit(500, 500);
img.Alignment = Element.ALIGN_CENTER;
doc.Add(img);

// 关闭文档
doc.Close();
添加表格

要在 PDF 文件中添加表格,请使用 PdfPTable 对象。可以设置列数、行间距、单元格间距、边框和其他属性。示例代码如下:

// 创建 PDF 文档
Document doc = new Document();
PdfWriter.GetInstance(doc, new FileStream("output.pdf", FileMode.Create));
doc.Open();

// 添加表格
PdfPTable table = new PdfPTable(3);
table.WidthPercentage = 100;
table.SpacingBefore = 10f;
table.SpacingAfter = 10f;

// 添加表头
table.AddCell("Header 1");
table.AddCell("Header 2");
table.AddCell("Header 3");

// 添加数据行
table.AddCell("Row 1, Column 1");
table.AddCell("Row 1, Column 2");
table.AddCell("Row 1, Column 3");

table.AddCell("Row 2, Column 1");
table.AddCell("Row 2, Column 2");
table.AddCell("Row 2, Column 3");

doc.Add(table);

// 关闭文档
doc.Close();
添加页面和书签

要在 PDF 文件中添加新页面,请使用 PdfContentByte 对象。可以设置页面大小、边框、颜色和其他属性。示例代码如下:

// 创建 PDF 文档
Document doc = new Document();
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream("output.pdf", FileMode.Create));
doc.Open();

// 添加新页面
doc.NewPage();
PdfContentByte cb = writer.DirectContent;

// 设置页面大小和颜色
cb.SetColorStroke(BaseColor.BLUE);
cb.SetLineWidth(5f);
cb.Rectangle(50f, 50f, 500f, 750f);
cb.Stroke();

// 添加书签
PdfDestination dest = new PdfDestination(PdfDestination.FIT);
dest.Add(new PdfString("NewPage"));
writer.SetOpenAction(PdfAction.GotoLocalPage("NewPage", dest, writer));

// 关闭文档
doc.Close();
总结

使用 iTextSharp 可以方便地编辑 PDF 文件。可以使用丰富的 API 添加文本、图像、表格、图形和其他元素。本文介绍了如何使用 iTextSharp 创建 PDF 文档、添加文本和图像、添加表格、添加页面和书签。阅读本文后,您应该能够轻松地使用 iTextSharp 创建和编辑 PDF 文件。