使用 itextsharp库中的PdfContentByte给pdf添加水印时支持中文
时间: 2024-01-27 18:04:47 浏览: 122
C#利用iTextSharp添加PDF水印
是的,使用iTextSharp库中的PdfContentByte给PDF添加水印时,是支持中文的。你可以使用BaseFont类来设置中文字体,然后在PdfContentByte对象上使用ShowTextAligned方法来添加中文水印。
以下是一个示例代码,演示如何使用iTextSharp给PDF添加中文水印:
```csharp
using iTextSharp.text;
using iTextSharp.text.pdf;
// 创建一个PDF文档对象
Document document = new Document();
// 创建一个PdfWriter对象来写入PDF文件
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("test.pdf", FileMode.Create));
document.Open();
// 创建一个PdfContentByte对象
PdfContentByte cb = writer.DirectContent;
// 设置中文字体
BaseFont baseFont = BaseFont.CreateFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
// 添加中文水印
cb.BeginText();
cb.SetFontAndSize(baseFont, 30);
cb.SetColorFill(BaseColor.GRAY);
cb.ShowTextAligned(Element.ALIGN_CENTER, "这是一个中文水印", document.PageSize.Width / 2, document.PageSize.Height / 2, 45);
cb.EndText();
document.Close();
```
以上代码中,我们创建了一个名为“test.pdf”的PDF文件,并在其中添加了一个中文水印。你可以根据自己的需要,修改水印的文字内容、字体、大小、颜色和位置等属性。
阅读全文