C# PDF文件右上角添加文字(iTextSharp)

C# PDF文件右上角添加文字(iTextSharp)

前言

从前有一个甲方(甲正经),两个乙方(分别是乙傲天、乙日天)。一天甲正经说:乙傲天!我们想要在PDF上加文字。乙傲天说:那是乙日天的活,我这只读取乙日天的PDF。乙日天说:给钱就做!甲正经说:不给!乙傲天你做!不管就你做!从此,乙傲天开启了"PDF文件右上角添加文字(iTextSharp)"之路。


一、iTextSharp是什么?

iTextSharp 是用来生成 PDF 文档的 C# 组件,相当于 Java 版的 iText。

二、使用步骤

1.using指令

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

2.代码示例

        static void Main(string[] args)
        {
            //原文件地址
            string url = @"D:\workspace\doc\pdf\不自由的小码.pdf";
            //最后要保存的文件地址
            string urlNew = @"D:\workspace\doc\pdf\[印]不自由的小码.pdf";
            //读取原pdf文件
            PdfReader reader = new PdfReader(url);
            PdfStamper stamper = new PdfStamper(reader, new FileStream(urlNew, FileMode.Create, FileAccess.Write, FileShare.None));
            //获取系统的字体
            BaseFont baseFont = BaseFont.CreateFont("C:\\Windows\\Fonts\\simhei.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
            //字体属性及大小
            Font font = new Font(baseFont, 11);
            //需要添加的文字
            Phrase addName = new Phrase("不自由的小码", font);
            //获取pdf总页数
            int pagesCount = reader.NumberOfPages;
            //获取pdf页面大小
            Rectangle pageSize = reader.GetPageSize(1);
            //设置pdf的宽
            float width = pageSize.Width;
            //设置pdf的高
            float height = pageSize.Height;
            //遍历所有页,从第一页开始
            for (int i = 1; i <= pagesCount; i++)
            {
                //设置当前页
                PdfContentByte canvas = stamper.GetOverContent(i);
                //将文本添加到每页pdf的右上角
                ColumnText.ShowTextAligned(canvas, Element.ALIGN_RIGHT, addName, width - 5, height - 15, 0);
            }
            //释放
            stamper.Close();
        }

这不仅仅是我一个人的成果,而是是广大码友的智慧。我只是个散播种子的蒲公英,希望能给大家带来帮助!毕竟乙傲天的漫漫之路还要走下去。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不自由的小码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值