GifImage

GifImage(GifFrameBlock, IColorPalette)

Yeni bir örneğini başlatırGifImage sınıf.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)
ParametreTipTanım
firstFrameGifFrameBlockgif görüntüsünün başlatılacağı ilk kare.
globalPaletteIColorPaletteKullanılacak genel palet. Her ikisi de varsa not edinfirstFrame veglobalPalette null ise varsayılan genel palet kullanılır.

istisnalar

istisnaşart
ArgumentNullExceptionÇerçeve boş olamaz;firstFrame
ArgumentExceptionİlk kare zaten başka bir resme ait. Container özelliğini kontrol edin.;firstFrame
GifImageExceptionBelirtilen palet, 2 kuvvetine eşit girişler içermelidir. Minimum palet boyutu 2, maksimum 256’dır.

Örnekler

Bu örnek, özel bir paletle bir GIF görüntüsünün nasıl oluşturulacağını ve bir dosyaya nasıl kaydedileceğini gösterir.

[C#]

string dir = "c:\\temp\\";

// 100x100 piksellik bir GIF Çerçeve bloğu oluşturun.
using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
{
    // Tüm bloğu kırmızı ile doldurun.
    Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(firstBlock);
    Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
    gr.FillRectangle(brush, firstBlock.Bounds);

    // Görüntü boyutunu küçültmek için 4 bitlik paleti kullanın. Kalite daha da kötüleşebilir.
    Aspose.Imaging.IColorPalette palette = Aspose.Imaging.ColorPaletteHelper.Create4Bit();

    using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock, palette))
    {
        gifImage.Save(dir + "output.gif");
    }
}

Ayrıca bakınız


GifImage(GifFrameBlock)

Yeni bir örneğini başlatırGifImage sınıf.

public GifImage(GifFrameBlock firstFrame)
ParametreTipTanım
firstFrameGifFrameBlockgif görüntüsünün başlatılacağı ilk kare.

istisnalar

istisnaşart
ArgumentNullExceptionÇerçeve boş olamaz;firstFrame
ArgumentExceptionİlk kare zaten başka bir resme ait. Container özelliğini kontrol edin.;firstFrame
GifImageExceptionBelirtilen palet, 2 kuvvetine eşit girişler içermelidir. Minimum palet boyutu 2, maksimum 256’dır.

Örnekler

Bu örnek, bir GIF görüntüsünün nasıl oluşturulacağını ve bir dosyaya nasıl kaydedileceğini gösterir.

[C#]

string dir = "c:\\temp\\";

// 100x100 piksellik bir GIF Çerçeve bloğu oluşturun.
using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
{
    // Tüm bloğu kırmızı ile doldurun.
    Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(firstBlock);
    Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
    gr.FillRectangle(brush, firstBlock.Bounds);

    using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
    {
        gifImage.Save(dir + "output.gif");
    }
}

Aşağıdaki örnek, tek tek GIF bloklarından bir animasyonlu GIF görüntüsünün nasıl oluşturulacağını gösterir.

[C#]

string dir = "c:\\temp\\";

// 100 x 100 piksellik bir GIF görüntüsü oluşturun.
// İlk blok varsayılan olarak tamamen siyahtır.
using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
{
    // İlk daire kırmızı
    Aspose.Imaging.Brushes.SolidBrush brush1 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);

    // İkinci daire siyah
    Aspose.Imaging.Brushes.SolidBrush brush2 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Black);

    // Kırmızı yay şeklinin açısını kademeli olarak artırın.
    for (int angle = 10; angle <= 360; angle += 10)
    {
        Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
        gr.FillPie(brush1, block.Bounds, 0, angle);

        gifImage.AddBlock(block);
    }

    // Siyah yayın açısını kademeli olarak artırın ve kırmızı yayı silin.
    for (int angle = 10; angle <= 360; angle += 10)
    {
        Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
        gr.FillPie(brush2, block.Bounds, 0, angle);
        gr.FillPie(brush1, block.Bounds, angle, 360 - angle);

        gifImage.AddBlock(block);
    }

    gifImage.Save(dir + "animated_radar.gif");
}

Ayrıca bakınız


GifImage(GifFrameBlock, IColorPalette, bool, byte, byte, byte, bool)

Yeni bir örneğini başlatırGifImage sınıf.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette, bool isPaletteSorted, 
    byte paletteColorResolution, byte paletteBackgroundColorIndex, byte aspectRatio, 
    bool hasTrailer)
ParametreTipTanım
firstFrameGifFrameBlockgif görüntüsünün başlatılacağı ilk kare.
globalPaletteIColorPaletteKullanılacak genel palet. Her ikisi de varsa not edinfirstFrame veglobalPalette null ise varsayılan genel palet kullanılır.
isPaletteSortedBooleanayarlanırsadoğru palet sıralanır. Parametrenin ne zaman kullanıldığını unutmayın.globalPalette boş değil.
paletteColorResolutionBytePalet renk çözünürlüğü. Parametrenin ne zaman kullanıldığını unutmayın.globalPalette boş değil.
paletteBackgroundColorIndexBytePalet arka plan rengi dizini.
aspectRatioByteEn boy oranı.
hasTrailerBooleanayarlanırsadoğru gif resminin fragmanı vardır, aksi takdirde akışın sonunda fragman yazılmaz.

istisnalar

istisnaşart
ArgumentNullExceptionÇerçeve boş olamaz;firstFrame
ArgumentExceptionİlk kare zaten başka bir resme ait. Container özelliğini kontrol edin.;firstFrame
GifImageExceptionBelirtilen palet, 2 kuvvetine eşit girişler içermelidir. Minimum palet boyutu 2, maksimum 256’dır.

Ayrıca bakınız