基于Aspose.Pdf把pdf文件每一页转换为图片

如题,直接上代码片段

            //1.选择pdf文件

  var dialog = new OpenFileDialog();
             dialog.Filter = "pdf文件|*.pdf";
 var dialogResult = dialog.ShowDialog();
 if (dialogResult != System.Windows.Forms.DialogResult.OK) {
 return;
             }
 
 //和选择的文件并列创建一个目录
  string filePath = dialog.FileName;
 string directoryPath = filePath + "目录";
 //aspose许可证
             Aspose.Pdf.License l = new Aspose.Pdf.License();
 string licenseName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Aspose.Total.Product.Family.lic");
             l.SetLicense(licenseName);
 //定义Jpeg转换设备
             Aspose.Pdf.Document document = new Aspose.Pdf.Document(filePath);
 var device = new Aspose.Pdf.Devices.JpegDevice();
 int quality = int.Parse(this.comboBox1.SelectedItem.ToString());
             directoryPath += quality;
             Directory.CreateDirectory(directoryPath);
 //默认质量为100,设置质量的好坏与处理速度不成正比,甚至是设置的质量越低反而花的时间越长,怀疑处理过程是先生成高质量的再压缩
             device = new Aspose.Pdf.Devices.JpegDevice(quality);
 //遍历每一页转为jpg
  for (var i = 1; i <= document.Pages.Count; i++) {
 string filePathOutPut = Path.Combine(directoryPath, string.Format("{0}.jpg", i));
                 FileStream fs = new FileStream(filePathOutPut, FileMode.OpenOrCreate);
 try {
                     device.Process(document.Pages[i], fs);
                     fs.Close();
                 } catch (Exception ex) {
                     fs.Close();
                     File.Delete(filePathOutPut);
                 }
            } 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏跟着阿笨一起玩NET

ZPL打印中文信息

  相信各位在实际的项目中,需要开发打条码模块的也会有不少,很多同行肯定也一直觉得斑马打印机很不错,但是ZPL打印中文字符很麻烦。如果购买字体卡,或者通过COD...

4351
来自专栏Porschev[钟慰]的专栏

CodeSmith 创建Ado.Net自定义模版(三)

CodeSmith 创建Ado.Net自定义模版(三) 接上一篇:   CodeSmith 创建Ado.Net自定义模版(二) 写数据访问层模版:Step3_D...

1978
来自专栏码匠的流水账

聊聊pg jdbc的queryTimeout及next方法

本文主要介绍一下pg jdbc statement的queryTimeout及resultSet的next方法

3371
来自专栏上善若水

CG008收费软件库Asprise ocr库识别图片验证码

1313
来自专栏JackieZheng

漫谈可视化Prefuse(四)---被玩坏的Prefuse API

  这个双12,别人都在抢红包、逛淘宝、上京东,我选择再续我的“漫谈可视化”系列(好了,不装了,其实是郎中羞涩。。。) 上篇《漫谈可视化Prefuse(三)-...

2525
来自专栏木宛城主

Thinking In Design Pattern——Query Object模式

什么是Query Object模式 Query Object的架构设计 Query Object在服务层的应用 测试 Query Obj...

2196
来自专栏Jerry的SAP技术分享

如何在ABAP里用函数式编程思想打印出非波拉契Fibonacci(数列)

在JavaScript里可以用ES6提供的FunctionGenerator这种黑科技来打印非波拉契数列,具体细节参考我这篇文章。

1103
来自专栏mathor

Hanoi(汉诺塔)

1242
来自专栏跟着阿笨一起玩NET

LINQ 从 CSV 文件生成 XML

本文参考:http://msdn.microsoft.com/zh-cn/library/bb387090.aspx

871
来自专栏C语言及其他语言

[程序源码]C语言实现俄罗斯方块(TC2.0)

看大家这么喜欢源码,那么好吧,小编和黄老师要了许多源码,这就给大家一一分享出去! C语言实现俄罗斯方块游戏 TC2.0环境,主要用到TC提供的graphics来...

69712

扫码关注云+社区

领取腾讯云代金券