前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于Aspose.Pdf把pdf文件每一页转换为图片

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

作者头像
用户1183026
发布2018-01-19 10:21:53
3.7K0
发布2018-01-19 10:21:53
举报
文章被收录于专栏:布尔布尔

如题,直接上代码片段

代码语言:js
复制
            //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);
                 }
            } 
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-05-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档