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;
            }
  • 相关阅读:
    layui的table使用,二
    将字符串中的以某个字符间隔放到数组中
    oracle中的 函数应用
    spring 的3种常用的注入方式
    写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数
    Myeclipse 10.7配置egit及导入项目
    Plsqi安装
    web项目引入js包时,报syntax error on token
    java笔试面试题总结
    web.xml中的配置
  • 原文地址:https://www.cnblogs.com/Magicam/p/1804522.html
Copyright © 2011-2022 走看看