可直接使用的在.net4.6.1环境下c#iTextSharp向pdf添加文字到自定义位置的完整示例
时间: 2024-11-04 20:14:14 浏览: 48
在.NET Framework 4.6.1环境中,使用iTextSharp库向PDF添加文字到自定义位置需要安装iText7(因为iTextSharp已被废弃,而iText7是其后续版本)。以下是一个完整的C#示例,展示如何添加文本:
```csharp
using iText.Kernel.Color;
using iText.Kernel.Pdf;
using iText.Layout.Element;
using iText.Layout.Font;
using System.IO;
public void AddTextToPdf(string pdfPath, string text, float x, float y, Font font, Color color)
{
// 创建一个新的PDF文档
using (FileStream file = new FileStream(pdfPath, FileMode.Create))
{
PdfDocument document = new PdfDocument(new PdfWriter(file));
// 设置字体和颜色
BaseFont baseFont = BaseFont.GetFont(Font Families.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
ITextRenderer renderer = new ITextRenderer(baseFont);
// 创建一个文本元素
SimpleText simpleText = new SimpleText(text, baseFont, 12f); // size can be adjusted as needed
// 设置文本位置
simpleText.SetAbsolutePosition(x, y);
// 添加文本到PDF
document.Add(simpleText);
// 渲染文本并关闭PDF
renderer.AddElement(simpleText);
document.Close();
}
}
// 使用示例
string pdfFilePath = "output.pdf";
string text = "Hello, World!";
float x = 50; // 文本起始X坐标
float y = 700; // 文本起始Y坐标,注意Y轴方向是从下往上的
Font font = new Font(Font.FontFamily.HELVETICA, 12, Font.UNDERLINE); // 字体样式
Color color = new SolidColor(BaseColor.BLACK); // 文字颜色
AddTextToPdf(pdfFilePath, text, x, y, font, color);
阅读全文