自学内容网 自学内容网

C#使用iTextSharp操作PDF文件

在C#中使用iTextSharp库来操作PDF文件是一个常见的需求,因为它提供了丰富的功能来创建、修改、签名和验证PDF文件。以下是一些基本的示例,展示如何使用iTextSharp来执行一些常见的PDF操作。

引入iTextSharp库

首先,你需要将iTextSharp库添加到你的C#项目中。你可以通过NuGet包管理器来安装它。在Visual Studio中,你可以通过“管理NuGet包”来搜索并安装iTextSharpitext7(如果你打算使用iText 7的话)。

创建PDF文件

以下是一个简单的示例,展示如何使用iTextSharp创建一个新的PDF文件:

using System;  
using System.IO;  
using iTextSharp.text;  
using iTextSharp.text.pdf;  
  
public class CreatePdf {  
    public static void Main() {  
        // 创建Document对象(页面大小、边距等)  
        Document document = new Document(PageSize.A4, 36, 36, 54, 54);  
  
        try {  
            // 创建一个PdfWriter实例,将Document对象写入文件  
            PdfWriter.GetInstance(document, new FileStream("output.pdf", FileMode.Create));  
  
            // 打开文档以便写入  
            document.Open();  
  
            // 添加内容到文档  
            document.Add(new Paragraph("Hello World!"));  
  
            // 关闭文档  
            document.Close();  
        }  
        catch (DocumentException de) {  
            Console.ErrorLine(de.Message);  
        }  
        catch (IOException ioe) {  
            Console.ErrorLine(ioe.Message);  
        }  
    }  
}

修改PDF文件

修改PDF文件通常比创建文件更复杂,因为你需要读取现有的PDF文件,然后进行更改。以下是一个简单的示例,展示如何向现有PDF文件添加文本:

using System;  
using System.IO;  
using iTextSharp.text;  
using iTextSharp.text.pdf;  
using iTextSharp.text.pdf.parser;  
  
public class ModifyPdf {  
    public static void Main() {  
        string existingPdf = "input.pdf";  
        string newPdf = "output_modified.pdf";  
  
        PdfReader reader = new PdfReader(existingPdf);  
        PdfStamper stamper = new PdfStamper(reader, new FileStream(newPdf, FileMode.Create));  
  
        // 获取第一页的PdfContentByte对象  
        PdfContentByte under = stamper.GetUnderContent(1);  
  
        // 假设我们要在页面的右下角添加文本  
        BaseFont bf = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, false);  
        under.BeginText();  
        under.SetFontAndSize(bf, 12);  
        under.ShowTextAligned(PdfContentByte.ALIGN_RIGHT, "Modified Text", 520, 50, 0);  
        under.EndText();  
  
        // 关闭stamper  
        stamper.Close();  
        reader.Close();  
    }  
}


原文地址:https://blog.csdn.net/x1234w4321/article/details/140291189

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!