惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cisco Talos Blog
Cisco Talos Blog
阮一峰的网络日志
阮一峰的网络日志
云风的 BLOG
云风的 BLOG
D
Docker
Vercel News
Vercel News
IT之家
IT之家
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
V
Visual Studio Blog
Engineering at Meta
Engineering at Meta
腾讯CDC
Google DeepMind News
Google DeepMind News
I
InfoQ
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
The GitHub Blog
The GitHub Blog
博客园 - Franky
The Cloudflare Blog
A
About on SuperTechFans
有赞技术团队
有赞技术团队
Y
Y Combinator Blog
T
Tenable Blog
P
Proofpoint News Feed
Recorded Future
Recorded Future
Security Latest
Security Latest
H
Hackread – Cybersecurity News, Data Breaches, AI and More
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - 聂微东
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Google Online Security Blog
Google Online Security Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Simon Willison's Weblog
Simon Willison's Weblog
The Last Watchdog
The Last Watchdog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
News and Events Feed by Topic
TaoSecurity Blog
TaoSecurity Blog
U
Unit 42
The Hacker News
The Hacker News
Martin Fowler
Martin Fowler
T
Threat Research - Cisco Blogs
NISL@THU
NISL@THU
F
Full Disclosure
M
MIT News - Artificial intelligence
人人都是产品经理
人人都是产品经理
Hugging Face - Blog
Hugging Face - Blog
V
V2EX
Project Zero
Project Zero

博客园 - 佛西亚

https访问 asp.net Core上传文件 .NET Framework 4.0 DLL注册GAC 使用iText 7读取PDF文件中的文本和图片 用SQL Server Profiler跟踪AX执行的SQL语句 D365升级包 Ant Design Pro V5 + Django Restful Framework Token认证前台实现 Ant Design Pro V5 + Django Restful Framework Token认证后台实现(二) Ant Design Pro V5 + Django Restful Framework Token认证后台实现(一) D365 FO产生随机字符串 D365 FO Array增加排序 D365 FO无法命中断点 Ant Design Pro V5 开发时使用后台服务数据 JavaScript跨域访问 同步数据库报错 DataEntity增加关联DataSource Java通过代理上传文件到Azure blob D365 FO Json序列化和反序列化 D365 FO操作Azure Blob
使用iText7操作PDF
佛西亚 · 2020-07-18 · via 博客园 - 佛西亚

遇到一个需求,给PDF增加一个印章,使用iText7可以很方便地实现这个需求,通过Nuget添加iText7的引用。

 1 string sourceFileName = txtFileName.Text;
 2             string destFileName = Path.GetDirectoryName(sourceFileName) + @"\" + Path.GetFileNameWithoutExtension(sourceFileName) + "_带印章." + Path.GetExtension(sourceFileName);
 3             PdfDocument pdfDocument = new PdfDocument(new PdfReader(sourceFileName), new PdfWriter(destFileName));        
 4             iText.Layout.Document document = new iText.Layout.Document(pdfDocument);        
 5             ImageData imageData = ImageDataFactory.Create(System.Windows.Forms.Application.StartupPath + @"\PASS.png");
 6             for (int i = 1; i <= pdfDocument.GetNumberOfPages(); i++)
 7             {
 8                 iText.Layout.Element.Image image = new iText.Layout.Element.Image(imageData).ScaleAbsolute(55, 55).SetFixedPosition(i, 90, 50);
 9                 document.Add(image);
10             }
11             document.Close();

PdfReader读取源文件,PdfWriter将改动写入新文件。
通过Layout命名空间里的Document对Pdf进行修改。
ScaleAbsolute设置图片的大小。
SetFixedPosition设置图片在PDF页面中的位置,这个方法有多个重载,这里用的是第一个是页码,第二个参数是距离左边的位置,第三个参数是距离页面底部的位置。