zoukankan      html  css  js  c++  java
  • Tif文件转换成GIF列表

    代码
     /// <summary>
            
    /// 将TIF文件转换为GIF文件列表
            
    /// </summary>
            
    /// <param name="fileName">要转换的TIF文件</param>        
            
    /// <returns>转换后生成的GIF文件路径</returns>
            public static IList<string> ConvertTifToGif(string fileName)
            {
                IList
    <string> list = new List<string>();

                
    string dic = AppDomain.CurrentDomain.BaseDirectory + "\\tempgif\\";

                
    if (!Directory.Exists(dic))
                {
                    Directory.CreateDirectory(dic);
                }

                
    if (string.IsNullOrEmpty(fileName))
                {
                    
    throw new ArgumentException("转换的TIF文件路径不能为空");
                }

                FileInfo file 
    = new FileInfo(fileName);

                
    if (!file.Exists)
                {
                    
    throw new FileNotFoundException("待转换的TIF文件不存在");
                }

                Image imgObj 
    = Image.FromFile(file.FullName);


                
    //Image imgObj = imgObj2.GetThumbnailImage(imgObj2.Width / 3 * 2, imgObj2.Height / 3 * 2, null, IntPtr.Zero); //Image.FromFile(file.FullName);

                Guid objGuid 
    = (Guid)imgObj.FrameDimensionsList.GetValue(0);

                FrameDimension objDimension 
    = new FrameDimension(objGuid);
                

                
    int totalImage = imgObj.GetFrameCount(objDimension);

                
    for (int index = 0; index < totalImage; index++)
                {
                    
    string gifPath = dic + file.Name.Substring(0, file.Name.LastIndexOf('.')) + "_" + index + ".gif";

                    
    if (File.Exists(gifPath))
                    {
                        File.Delete(gifPath);
                    }

                   
    //EncoderParameter en = new EncoderParameter();

                    imgObj.SelectActiveFrame(objDimension, index);
                    imgObj.Save(gifPath, ImageFormat.Gif);
                    FileInfo item 
    = new FileInfo(gifPath);
                    list.Add(
    "tempgif\\" + item.Name);
                }

                
    return list;
            }
  • 相关阅读:
    三十岁前不要去在乎的29件事
    大型网站架构演变和知识体系
    性情中人。。。
    blog搬新家了。。。把以前的文章也都搬过来了。看看以前的文章,想起了很多。。。
    2006620 11:42:00 王子劳尔,王者归来
    2006620 11:40:00 这一刻,便是我们的永远给最爱的安德烈.舍普琴科
    第一份工作一定要选一家好公司 摘在 唐骏 《我的成功可以复制》
    2006811 11:29:00 搜索算法及其在ACM竞赛中的应用(作者/刘力科 计算机系01级4班)
    内核学习驱动隐藏进程
    2005129 17:58:00 新年快乐
  • 原文地址:https://www.cnblogs.com/Magicam/p/1804522.html
Copyright © 2011-2022 走看看