码迷,mamicode.com
首页 > Windows程序 > 详细

C#pdf 切割成图片

时间:2015-11-13 14:49:40      阅读:370      评论:0      收藏:0      [点我收藏+]

标签:

 引用

using Ghostscript.NET;
using Ghostscript.NET.Rasterizer;

 

需要安装 exe文件

 

public static GhostscriptVersionInfo _lastInstalledVersion = null;
        public static GhostscriptRasterizer _rasterizer = null;

 

PdfToImages(string pdfInputPath, string imageOutputPath)

 
                //解析度
                int desired_x_dpi = Convert.ToInt32(96);
                int desired_y_dpi = Convert.ToInt32(96);

  Log.writeLog("生成临时文件夹");
                var destFile = GetFilePath(pdfInputPath);
                Log.writeLog("复制pdf资料");
                System.IO.File.Copy(pdfInputPath, destFile, true);
                Log.writeLog("复制pdf资料完成");
                if (System.IO.File.Exists(destFile))
                {
                    try
                    {

  _lastInstalledVersion =                             GhostscriptVersionInfo.GetLastInstalledVersion(                        GhostscriptLicense.GPL | GhostscriptLicense.AFPL,                        GhostscriptLicense.GPL);

                        _rasterizer = new GhostscriptRasterizer();

                        _rasterizer.Open(destFile, _lastInstalledVersion, false);

         for (var i = 1; i <= endPageNum; i++)                  

       {                          

             string pageFilePath = Path.Combine(imageOutputPath, imageName + "_" + i.ToString() + "." + imageFormat.ToString());

                            Image img = _rasterizer.GetPage(desired_x_dpi, desired_y_dpi, i);  

          img.Save(pageFilePath, ImageFormat.Jpeg);

   }
                        _rasterizer.Dispose();
                    }
                    catch (Exception ex)
                    {
                        Log.writeLog("Exception:" + ex.ToString());
                        System.IO.File.Delete(destFile);
                    }
                    finally
                    {
                        Log.writeLog("finally:删除资料");
                        System.IO.File.Delete(destFile);
                        //System.IO.Direc

}

 

 /// <summary>
        /// 根据源文件路径获取新重新命名的文件路径
        /// </summary>
        /// <param name="filePath"></param>
        /// <returns></returns>
        static string GetFilePath(string filePath)
        {
            if (string.IsNullOrWhiteSpace(filePath))
            {
                return string.Empty;
            }
            else
            {
                return string.Format("{0}{1}{2}", filePath.Substring(0, filePath.LastIndexOf(‘\\‘) + 1), Guid.NewGuid().ToString("N").Replace("-", ""), filePath.Substring(filePath.LastIndexOf(‘.‘)));
            }
        }

C#pdf 切割成图片

标签:

原文地址:http://www.cnblogs.com/qhy1277/p/4962009.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!