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;
        }

 

你可能感兴趣的:(gif)