←Select platform

CodecsGifOptions Class

Summary

Provides extra options for loading and saving GIF images.

Syntax
C#
VB
Objective-C
C++
Java
public class CodecsGifOptions 
Public Class CodecsGifOptions  
@interface LTCodecsGifOptions : NSObject 
public class CodecsGifOptions 
public ref class CodecsGifOptions  
Example
C#
VB
using Leadtools; 
using Leadtools.Codecs; 
 
public void CodecsGifOptionsExample() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
   string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "eye.gif"); 
 
   // Get all Information about the Gif file that you want to load. 
   CodecsImageInfo imageInfo = codecs.GetInformation(srcFileName, true); 
 
   // set the animation loop value.  
   if (imageInfo.Gif.HasAnimationLoop) 
   { 
      codecs.Options.Gif.Load.AnimationLoop = imageInfo.Gif.AnimationLoop; 
      if (imageInfo.Gif.AnimationLoop > 10) 
         codecs.Options.Gif.Save.AnimationLoop = 10; 
   } 
 
   // if this image that you want to load uses the Animation loop then use it in the save options. 
   codecs.Options.Gif.Save.UseAnimationLoop = imageInfo.Gif.HasAnimationLoop; 
 
   // if this image that you want to load uses the Animation Background then use it in the save options. 
   if (imageInfo.Gif.HasAnimationBackground) 
      codecs.Options.Gif.Save.AnimationBackground = imageInfo.Gif.AnimationBackground; 
 
   // if this image that you want to load uses the Animation Palette then use it in the save options. 
   if (imageInfo.Gif.HasAnimationPalette) 
      codecs.Options.Gif.Save.SetAnimationPalette(imageInfo.Gif.GetAnimationPalette()); 
 
   codecs.Options.Gif.Save.UseAnimationPalette = imageInfo.Gif.HasAnimationPalette; 
 
   // if this image that you want to load uses the Intrlaced option, then use it otherwise don't use it. 
   codecs.Options.Gif.Save.Interlaced = imageInfo.Gif.IsInterlaced; 
 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth; 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight; 
 
   RasterImage srcImage = codecs.Load(srcFileName); 
 
   codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "gif1.gif"), RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite); 
 
   //change some save options and save the image in a new file. 
   codecs.Options.Gif.Save.UseAnimationLoop = true; 
   codecs.Options.Gif.Save.AnimationLoop = 1; 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth + 100; 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight + 100; 
 
   //Saving the image after the Gif setting. 
   codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "gif2.gif"), RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite); 
 
   // Clean up 
   srcImage.Dispose(); 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
 
Public Sub CodecsGifOptionsExample() 
   Dim codecs As RasterCodecs = New RasterCodecs() 
   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "eye.gif") 
 
   ' Get all Information about the Gif file that you want to load. 
   Dim imageInfo As CodecsImageInfo = codecs.GetInformation(srcFileName, True) 
 
   ' set the animation loop value.  
   If imageInfo.Gif.HasAnimationLoop Then 
      codecs.Options.Gif.Load.AnimationLoop = imageInfo.Gif.AnimationLoop 
      If imageInfo.Gif.AnimationLoop > 10 Then 
         codecs.Options.Gif.Save.AnimationLoop = 10 
      End If 
   End If 
 
   ' if this image that you want to load uses the Animation loop then use it in the save options. 
   codecs.Options.Gif.Save.UseAnimationLoop = imageInfo.Gif.HasAnimationLoop 
 
   ' if this image that you want to load uses the Animation Background then use it in the save options. 
   If imageInfo.Gif.HasAnimationBackground Then 
      codecs.Options.Gif.Save.AnimationBackground = imageInfo.Gif.AnimationBackground 
   End If 
 
   ' if this image that you want to load uses the Animation Palette then use it in the save options. 
   If imageInfo.Gif.HasAnimationPalette Then 
      codecs.Options.Gif.Save.SetAnimationPalette(imageInfo.Gif.GetAnimationPalette()) 
   End If 
 
   codecs.Options.Gif.Save.UseAnimationPalette = imageInfo.Gif.HasAnimationPalette 
 
   ' if this image that you want to load uses the Intrlaced option, then use it otherwise don't use it. 
   codecs.Options.Gif.Save.Interlaced = imageInfo.Gif.IsInterlaced 
 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight 
 
   Dim srcImage As RasterImage = codecs.Load(srcFileName) 
 
   codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "gif1.gif"), RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite) 
 
   'change some save options and save the image in a new file. 
   codecs.Options.Gif.Save.UseAnimationLoop = True 
   codecs.Options.Gif.Save.AnimationLoop = 1 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth + 100 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight + 100 
 
   'Saving the image after the Gif setting. 
   codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "gif2.gif"), RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite) 
 
   ' Clean up 
   srcImage.Dispose() 
   codecs.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
c#[Silverlight C# Example] 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Examples; 
using Leadtools.ImageProcessing; 
 
public void CodecsGifOptionsExample(Stream inStreamGif, Stream outStreamGif1, Stream outStreamGif2) 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Get all Information about the Gif file that you want to load. 
   CodecsImageInfo imageInfo = codecs.GetInformation(inStreamGif, true); 
 
   // set the animation loop value.  
   if (imageInfo.Gif.HasAnimationLoop) 
   { 
      codecs.Options.Gif.Load.AnimationLoop = imageInfo.Gif.AnimationLoop; 
      if (imageInfo.Gif.AnimationLoop > 10) 
         codecs.Options.Gif.Save.AnimationLoop = 10; 
   } 
 
   // if this image that you want to load uses the Animation loop then use it in the save options. 
   codecs.Options.Gif.Save.UseAnimationLoop = imageInfo.Gif.HasAnimationLoop; 
 
   // if this image that you want to load uses the Animation Background then use it in the save options. 
   if (imageInfo.Gif.HasAnimationBackground) 
      codecs.Options.Gif.Save.AnimationBackground = imageInfo.Gif.AnimationBackground; 
 
   // if this image that you want to load uses the Animation Palette then use it in the save options. 
   if (imageInfo.Gif.HasAnimationPalette) 
      codecs.Options.Gif.Save.SetAnimationPalette(imageInfo.Gif.GetAnimationPalette()); 
 
   codecs.Options.Gif.Save.UseAnimationPalette = imageInfo.Gif.HasAnimationPalette; 
 
   // if this image that you want to load uses the Intrlaced option, then use it otherwise don't use it. 
   codecs.Options.Gif.Save.Interlaced = imageInfo.Gif.IsInterlaced; 
 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth; 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight; 
 
   RasterImage srcImage = codecs.Load(inStreamGif); 
 
   codecs.Save(srcImage, outStreamGif1, RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite); 
 
   //change some save options and save the image in a new file. 
   codecs.Options.Gif.Save.UseAnimationLoop = true; 
   codecs.Options.Gif.Save.AnimationLoop = 1; 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth + 100; 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight + 100; 
 
   //Saving the image after the Gif setting. 
   codecs.Save(srcImage, outStreamGif2, RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite); 
 
   // Clean up 
   srcImage.Dispose(); 
} 
vb[Silverlight VB Example] 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
 
Public Sub CodecsGifOptionsExample(ByVal inStreamGif As Stream, ByVal outStreamGif1 As Stream, ByVal outStreamGif2 As Stream) 
   Dim codecs As RasterCodecs = New RasterCodecs() 
 
   ' Get all Information about the Gif file that you want to load. 
   Dim imageInfo As CodecsImageInfo = codecs.GetInformation(inStreamGif, True) 
 
   ' set the animation loop value.  
   If imageInfo.Gif.HasAnimationLoop Then 
      codecs.Options.Gif.Load.AnimationLoop = imageInfo.Gif.AnimationLoop 
      If imageInfo.Gif.AnimationLoop > 10 Then 
         codecs.Options.Gif.Save.AnimationLoop = 10 
      End If 
   End If 
 
   ' if this image that you want to load uses the Animation loop then use it in the save options. 
   codecs.Options.Gif.Save.UseAnimationLoop = imageInfo.Gif.HasAnimationLoop 
 
   ' if this image that you want to load uses the Animation Background then use it in the save options. 
   If imageInfo.Gif.HasAnimationBackground Then 
      codecs.Options.Gif.Save.AnimationBackground = imageInfo.Gif.AnimationBackground 
   End If 
 
   ' if this image that you want to load uses the Animation Palette then use it in the save options. 
   If imageInfo.Gif.HasAnimationPalette Then 
      codecs.Options.Gif.Save.SetAnimationPalette(imageInfo.Gif.GetAnimationPalette()) 
   End If 
 
   codecs.Options.Gif.Save.UseAnimationPalette = imageInfo.Gif.HasAnimationPalette 
 
   ' if this image that you want to load uses the Intrlaced option, then use it otherwise don't use it. 
   codecs.Options.Gif.Save.Interlaced = imageInfo.Gif.IsInterlaced 
 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight 
 
   Dim srcImage As RasterImage = codecs.Load(inStreamGif) 
 
   codecs.Save(srcImage, outStreamGif1, RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite) 
 
   'change some save options and save the image in a new file. 
   codecs.Options.Gif.Save.UseAnimationLoop = True 
   codecs.Options.Gif.Save.AnimationLoop = 1 
   codecs.Options.Gif.Save.AnimationWidth = imageInfo.Gif.AnimationWidth + 100 
   codecs.Options.Gif.Save.AnimationHeight = imageInfo.Gif.AnimationHeight + 100 
 
   'Saving the image after the Gif setting. 
   codecs.Save(srcImage, outStreamGif2, RasterImageFormat.Gif, srcImage.BitsPerPixel, 1, srcImage.PageCount, 1, CodecsSavePageMode.Overwrite) 
 
   ' Clean up 
   srcImage.Dispose() 
End Sub 
Requirements

Target Platforms

Help Version 20.0.2019.12.5
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Codecs Assembly