ITextSharp对PDF文件的相关操作
首先引入头文件iTextSharp.text.pdf与iTextSharp.text
1.PdfReader reader = new PdfReader(path); //打来pdf文件,path为参数路径
2.Document document = new Document(reader.GetPageSizeWithRotation(1)); //以reader的第一页创建一个document对象
3.PdfWriter tmp = PdfWriter.GetInstance(document,new FileStream(tempFile,FileMode.Append)); //通过PdfWriter在tempFile路径下创建一个pdf文件
4.PdfContentByte over = tmp.DirectContent;//打开tmp的图片层,创建一个PdfContentByte对象,主要用于旋转,指定位置插入水印
5.PdfImportedPage importedPage = tem.GetImportedPage(reader,j);//以reader的第j页创建一个PdfImportedPage对象
6.over.AddTemplate(importedPage,0f,-1f,1f,0f,0f,reader.getPageSizeWidthRotation(j).Height);//将importedPage旋转90°添加到over中
over.AddTemplate(importedPage,0f,1f,-1f,0f,reader.getPageSizeWidthRotation(j).Width,0f);//将importedPage旋转180°添加到over中
over.AddTemplate(importedPage,-1f,0f,0f,1f,0f,0f);//将importedPage旋转270°添加到over中
over.AddTemplate(importedPage,0f,-1f,1f,0f,0f,reader.getPageSizeWidthRotation(j).Height);//将importedPage添加到over中
over.BeginText();//准备开始插入文本
over.SetTextMartrix(15f,33f);//文本位置(坐标)
over.ShowText(string);//文本内容
over.EndText();//文本插入结束
7.PdfStemper cc = new PdfStamper(readerA,new FileStream(path,fileMode.Append));//以A建立一个PdfStemper对象
cc.ReplacePage(readerB,old,new);//将B的第old页插入到A的new页
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现