今天就跟大家聊聊有关C# 中怎么实现压缩PDF图片,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
在源城等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、成都做网站、外贸营销网站建设 网站设计制作按需定制制作,公司网站建设,企业网站建设,成都品牌网站建设,成都营销网站建设,成都外贸网站建设,源城网站建设费用合理。
提示:编辑代码前,需要安装该组件,并添加引用dll文件到项目程序中,同时添加指令。
方法一
using Spire.Pdf; using System.Drawing; using Spire.Pdf.Graphics; using Spire.Pdf.Exporting; namespace CompressImage_PDF { class Program { static void Main(string[] args) { //初始化一个PdfDocument类实例并加载一个pdf文档 PdfDocument doc = new PdfDocument(@"C:\Users\Administrator\Desktop\Input.pdf"); //禁用增量更新 doc.FileInfo.IncrementalUpdate = false; //遍历PDF所有页,诊断页面是否含有图片 foreach (PdfPageBase page in doc.Pages) { if (page != null) { if (page.ImagesInfo != null) { foreach (PdfImageInfo info in page.ImagesInfo) { //调用方法TryCompressImage()压缩图片 page.TryCompressImage(info.Index); } } } } //保存文档 doc.SaveToFile("Output.pdf"); } } }
方法二
using Spire.Pdf; using System.Drawing; using Spire.Pdf.Graphics; namespace CompressImage_PDF { class Program { static void Main(string[] args) { //初始化一个PdfDocument类实例并加载一个pdf文档 PdfDocument doc = new PdfDocument(@"C:\Users\Administrator\Desktop\Input.pdf"); //禁用增量更新 doc.FileInfo.IncrementalUpdate = false; //遍历所有PDF页,提取图片 foreach (PdfPageBase page in doc.Pages) { Image[] images = page.ExtractImages(); //遍历所有图片 if (images != null && images.Length > 0) { for (int j = 0; j < images.Length; j++) { Image image = images[j]; PdfBitmap bp = new PdfBitmap(image); //设置bp.Quality值,压缩图片 bp.Quality = 20; //将压缩后的图片替换原有图片 page.ReplaceImage(j, bp); } } } //保存文档 doc.SaveToFile("Output2.pdf"); } } }
看完上述内容,你们对C# 中怎么实现压缩PDF图片有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。