GifImage
Contenuti
[
Nascondere
]GifImage class
Un’immagine gif.
public sealed class GifImage : RasterCachedMultipageImage, IMultipageImageExt
Costruttori
Nome | Descrizione |
---|---|
GifImage(GifFrameBlock) | Inizializza una nuova istanza diGifImage classe. |
GifImage(GifFrameBlock, IColorPalette) | Inizializza una nuova istanza diGifImage classe. |
GifImage(GifFrameBlock, IColorPalette, bool, byte, byte, byte, bool) | Inizializza una nuova istanza diGifImage classe. |
Proprietà
Nome | Descrizione |
---|---|
ActiveFrame { get; set; } | Ottiene o imposta il frame attivo. |
AutoAdjustPalette { get; set; } | Ottiene o imposta un valore che indica se regolare automaticamente la tavolozza. |
override BackgroundColor { get; set; } | Ottiene o imposta il colore di sfondo. |
BackgroundColorIndex { get; set; } | Ottiene o imposta l’indice del colore di sfondo. |
override BitsPerPixel { get; } | Ottiene il numero di bit dell’immagine per pixel. |
Blocks { get; } | Ottiene i blocchi GIF. |
Bounds { get; } | Ottiene i limiti dell’immagine. |
BufferSizeHint { get; set; } | Ottiene o imposta l’hint per la dimensione del buffer che è la dimensione massima consentita per tutti i buffer interni. |
Container { get; } | Ottiene ilImage contenitore. |
DataStreamContainer { get; } | Ottiene il flusso di dati dell’oggetto. |
Disposed { get; } | Ottiene un valore che indica se questa istanza è stata eliminata. |
override FileFormat { get; } | Ottiene un valore di formato file |
override HasAlpha { get; } | Ottiene un valore che indica se questa istanza ha alpha. |
override HasBackgroundColor { get; } | Ottiene un valore che indica se l’immagine ha il colore di sfondo. |
HasTrailer { get; set; } | Ottiene o imposta un valore che indica se GIF ha trailer. |
override HasTransparentColor { get; set; } | Ottiene un valore che indica se la cornice attiva ha un colore trasparente. |
override Height { get; } | Ottiene l’altezza dell’immagine. |
virtual HorizontalResolution { get; set; } | Ottiene o imposta la risoluzione orizzontale, in pixel per pollice, di questoRasterImage . |
override ImageOpacity { get; } | Ottiene l’opacità di questa immagine (frame attivo). |
InterruptMonitor { get; set; } | Ottiene o imposta il monitor di interruzione. |
IsCached { get; } | Ottiene un valore che indica se i dati dell’immagine sono attualmente memorizzati nella cache. |
IsInterlaced { get; } | Ottiene un valore che indica se questa istanza dell’immagine è interlacciata. |
IsPaletteSorted { get; set; } | Ottiene o imposta un valore che indica se la tavolozza è ordinata. |
IsRawDataAvailable { get; } | Ottiene un valore che indica se è disponibile il caricamento dei dati grezzi. |
LoopsCount { get; set; } | Ottiene il conteggio dei loop (se l’immagine gif contiene informazioni sui loop) |
override PageCount { get; } | Ottiene il conteggio delle pagine. |
override PageExportingAction { get; set; } | Ottiene o imposta l’azione di esportazione della pagina. Tieni presente che l’impostazione di questo metodo rilascerà automaticamente le risorse della pagina dopo l’esecuzione. Verrà eseguito appena prima del salvataggio di ogni pagina. |
override Pages { get; } | Ottiene le pagine. |
Palette { get; set; } | Ottiene o imposta la tavolozza dei colori. La tavolozza dei colori non viene utilizzata quando i pixel sono rappresentati direttamente. |
PaletteColorResolutionBits { get; set; } | Ottiene o imposta i bit di risoluzione del colore della tavolozza. |
PixelAspectRatio { get; set; } | Ottiene o imposta le proporzioni dei pixel. |
virtual PremultiplyComponents { get; set; } | Ottiene o imposta un valore che indica se i componenti dell’immagine devono essere premoltiplicati. |
RawCustomColorConverter { get; set; } | Ottiene o imposta il convertitore colore personalizzato |
virtual RawDataFormat { get; } | Ottiene il formato dei dati grezzi. |
RawDataSettings { get; } | Ottiene le impostazioni dei dati grezzi correnti. Nota quando si utilizzano queste impostazioni i dati vengono caricati senza conversione. |
RawFallbackIndex { get; set; } | Ottiene o imposta l’indice di fallback da utilizzare quando l’indice della tavolozza è fuori dai limiti |
RawIndexedColorConverter { get; set; } | Ottiene o imposta il convertitore colore indicizzato |
virtual RawLineSize { get; } | Ottiene la dimensione della riga grezza in byte. |
Size { get; } | Ottiene la dimensione dell’immagine. |
override TransparentColor { get; } | Ottiene il colore trasparente della cornice attiva. |
virtual UpdateXmpData { get; set; } | Ottiene o imposta un valore che indica se aggiornare i metadati XMP. |
override UsePalette { get; } | Ottiene un valore che indica se viene utilizzata la tavolozza dell’immagine. |
virtual UseRawData { get; set; } | Ottiene o imposta un valore che indica se utilizzare il caricamento dei dati grezzi quando è disponibile il caricamento dei dati grezzi. |
virtual VerticalResolution { get; set; } | Ottiene o imposta la risoluzione verticale, in pixel per pollice, di questoRasterImage . |
override Width { get; } | Ottiene la larghezza dell’immagine. |
override XmpData { get; set; } | Ottiene o imposta i metadati XMP. |
Metodi
Nome | Descrizione |
---|---|
AddBlock(IGifBlock) | Aggiunge un nuovo blocco GIF. |
AddPage(RasterImage) | Aggiunge la pagina all’immagine. |
override AdjustBrightness(int) | Regolazione di abrightness per immagine. |
override AdjustContrast(float) | Regola il contrasto. |
override AdjustGamma(float) | Correzione gamma di un’immagine. |
override AdjustGamma(float, float, float) | Correzione gamma di un’immagine. |
override BinarizeBradley(double) | Binarizzazione di un’immagine utilizzando l’algoritmo di soglia adattivo di Bradley utilizzando la soglia di immagine integrale |
override BinarizeBradley(double, int) | Binarizzazione di un’immagine utilizzando l’algoritmo di soglia adattivo di Bradley utilizzando la soglia di immagine integrale |
override BinarizeFixed(byte) | Binarizzazione di un’immagine con soglia predefinita |
override BinarizeOtsu() | Binarizzazione di un’immagine con soglia Otsu |
override CacheData() | Memorizza nella cache i dati privati. |
CanSave(ImageOptionsBase) | Determina se l’immagine può essere salvata nel formato file specificato rappresentato dalle opzioni di salvataggio passate. |
ClearBlocks() | Cancella tutti i blocchi GIF. |
override Crop(Rectangle) | Ritaglio dell’immagine. |
override Crop(int, int, int, int) | Ritaglia immagine con spostamenti. |
Dispose() | Elimina l’istanza corrente. |
Dither(DitheringMethod, int) | Esegue il dithering sull’immagine corrente. |
override Dither(DitheringMethod, int, IColorPalette) | Esegue il dithering sull’immagine corrente. |
override Filter(Rectangle, FilterOptionsBase) | Filtra il rettangolo specificato. |
GetArgb32Pixel(int, int) | Ottiene un’immagine ARGB pixel a 32 bit. |
GetDefaultArgb32Pixels(Rectangle) | Ottiene l’array di pixel ARGB a 32 bit predefinito. |
virtual GetDefaultOptions(object[]) | Ottiene le opzioni predefinite. |
GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) | Ottiene l’array di pixel predefinito utilizzando il caricatore di pixel parziale. |
GetDefaultRawData(Rectangle, RawDataSettings) | Ottiene l’array di dati grezzi predefinito. |
GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) | Ottiene l’array di dati grezzi predefinito utilizzando il caricatore di pixel parziale. |
virtual GetModifyDate(bool) | Ottiene la data e l’ora dell’ultima modifica dell’immagine della risorsa. |
override GetOriginalOptions() | Ottiene le opzioni in base alle impostazioni del file originale. Questo può essere utile per mantenere invariati la profondità di bit e altri parametri dell’immagine originale. Ad esempio, se carichiamo un’immagine PNG in bianco e nero con 1 bit per pixel e quindi salvalo usando il Save metodo, verrà prodotta l’immagine PNG di output con 8 bit per pixel. Per evitarlo e salvare l’immagine PNG con 1 bit per pixel, utilizzare questo metodo per ottenere le opzioni di salvataggio corrispondenti e passarle alSave metodo come secondo parametro. |
GetPixel(int, int) | Ottiene un pixel dell’immagine. |
GetSkewAngle() | Ottiene l’angolo di inclinazione. Questo metodo è applicabile ai documenti di testo scansionati, per determinare l’angolo di inclinazione durante la scansione. |
override Grayscale() | Trasformazione di un’immagine nella sua rappresentazione in scala di grigi |
InsertBlock(int, IGifBlock) | Aggiunge un nuovo blocco GIF. |
LoadArgb32Pixels(Rectangle) | Carica pixel ARGB a 32 bit. |
LoadArgb64Pixels(Rectangle) | Carica pixel ARGB a 64 bit. |
LoadCmyk32Pixels(Rectangle) | Carica i pixel in formato CMYK. |
LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) | Carica i pixel ARGB a 32 bit parzialmente per pacchetti. |
LoadPartialPixels(Rectangle, IPartialPixelLoader) | Carica i pixel parzialmente per pacchetti. |
LoadPixels(Rectangle) | Carica pixel. |
LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) | Carica dati grezzi. |
LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) | Carica dati grezzi. |
NormalizeAngle() | Normalizza l’angolo. Questo metodo è applicabile ai documenti di testo scansionati per eliminare la scansione obliqua. Questo metodo utilizzaGetSkewAngle eRotate metodi. |
override NormalizeAngle(bool, Color) | Normalizza l’angolo. Questo metodo è applicabile ai documenti di testo scansionati per eliminare la scansione obliqua. Questo metodo utilizza!:GetSkewAngle eRotate metodi. |
OrderBlocks() | Ordina i blocchi GIF in base alla specifica GIF. AlcuniGifGraphicsControlBlock può essere rimosso per un layout GIF corretto. |
ReadArgb32ScanLine(int) | Legge l’intera linea di scansione in base all’indice della linea di scansione specificato. |
ReadScanLine(int) | Legge l’intera linea di scansione in base all’indice della linea di scansione specificato. |
RemoveBlock(IGifBlock) | Rimuove il blocco GIF. |
ReplaceColor(Color, byte, Color) | Sostituisce un colore con un altro con la differenza consentita e conserva il valore alfa originale per salvare i bordi smussati. |
override ReplaceColor(int, byte, int) | Sostituisce un colore con un altro con la differenza consentita e conserva il valore alfa originale per salvare i bordi smussati. |
ReplaceNonTransparentColors(Color) | Sostituisce tutti i colori non trasparenti con un nuovo colore e conserva il valore alfa originale per salvare i bordi smussati. Nota: se lo usi su immagini senza trasparenza, tutti i colori verranno sostituiti con uno solo. |
override ReplaceNonTransparentColors(int) | Sostituisce tutti i colori non trasparenti con un nuovo colore e conserva il valore alfa originale per salvare i bordi smussati. Nota: se lo usi su immagini senza trasparenza, tutti i colori verranno sostituiti con uno solo. |
Resize(int, int) | Ridimensiona l’immagine. Il predefinitoNearestNeighbourResample viene utilizzato. |
override Resize(int, int, ImageResizeSettings) | Ridimensiona l’immagine. |
override Resize(int, int, ResizeType) | Ridimensiona l’immagine. |
ResizeFullFrame(int, int, ResizeType) | Ridimensiona l’immagine utilizzando fotogrammi interi per ogni pagina GIF. Necessario per evitare la comparsa di possibili artefatti. |
ResizeHeightProportionally(int) | Ridimensiona proporzionalmente l’altezza. Il predefinitoNearestNeighbourResample viene utilizzato. |
virtual ResizeHeightProportionally(int, ImageResizeSettings) | Ridimensiona proporzionalmente l’altezza. |
override ResizeHeightProportionally(int, ResizeType) | Ridimensiona proporzionalmente la larghezza. |
ResizeProportional(int, int, ResizeType) | Esegue il ridimensionamento proporzionale sull’immagine. Il ridimensionamento proporzionale ridimensionerà ogni fotogramma in base al rapporto dinewWidth/larghezza enewHeight /altezza. |
ResizeWidthProportionally(int) | Ridimensiona proporzionalmente la larghezza. Il predefinitoNearestNeighbourResample viene utilizzato. |
virtual ResizeWidthProportionally(int, ImageResizeSettings) | Ridimensiona proporzionalmente la larghezza. |
override ResizeWidthProportionally(int, ResizeType) | Ridimensiona proporzionalmente la larghezza. |
virtual Rotate(float) | Ruota l’immagine attorno al centro. |
override Rotate(float, bool, Color) | !:RasterCahcedMultipageImage.Rotate immagine intorno al centro. |
override RotateFlip(RotateFlipType) | Ruota, capovolge o ruota e capovolge solo il fotogramma attivo. |
Save() | Salva i dati dell’immagine nel flusso sottostante. |
Save(Stream) | Salva i dati dell’oggetto nel flusso specificato. |
override Save(string) | Salva l’immagine nella posizione del file specificata. |
Save(Stream, ImageOptionsBase) | Salva i dati dell’immagine nel flusso specificato nel formato file specificato in base alle opzioni di salvataggio. |
virtual Save(string, bool) | Salva i dati dell’oggetto nella posizione del file specificata. |
virtual Save(string, ImageOptionsBase) | Salva i dati dell’oggetto nel percorso file specificato nel formato file specificato in base alle opzioni di salvataggio. |
override Save(Stream, ImageOptionsBase, Rectangle) | Salva i dati dell’immagine nel flusso specificato nel formato file specificato in base alle opzioni di salvataggio. |
virtual Save(string, ImageOptionsBase, Rectangle) | Salva i dati dell’oggetto nel percorso file specificato nel formato file specificato in base alle opzioni di salvataggio. |
SaveArgb32Pixels(Rectangle, int[]) | Salva i pixel ARGB a 32 bit. |
SaveCmyk32Pixels(Rectangle, int[]) | Salva i pixel. |
SavePixels(Rectangle, Color[]) | Salva i pixel. |
SaveRawData(byte[], int, Rectangle, RawDataSettings) | Salva i dati grezzi. |
SetArgb32Pixel(int, int, int) | Imposta un pixel ARGB a 32 bit dell’immagine per la posizione specificata. |
SetFrameTime(ushort) | Imposta la durata di tutti i frame in millisecondi. La modifica di questo valore azzererà il ritardo per tutti i frame. |
override SetPalette(IColorPalette, bool) | Imposta la tavolozza dell’immagine. |
SetPixel(int, int, Color) | Imposta un pixel dell’immagine per la posizione specificata. |
virtual SetResolution(double, double) | Imposta la risoluzione per questoRasterImage . |
virtual ToBitmap() | Converte l’immagine raster in bitmap. |
WriteArgb32ScanLine(int, int[]) | Scrive l’intera linea di scansione nell’indice della linea di scansione specificato. |
WriteScanLine(int, Color[]) | Scrive l’intera linea di scansione nell’indice della linea di scansione specificato. |
Esempi
Esportazione di parte dell’animazione dall’immagine GIF in base all’intervallo di tempo.
[C#]
using (var image = Image.Load("Animation.gif"))
{
var options = new GifOptions
{
FullFrame = true,
MultiPageOptions = new MultiPageOptions
{
Mode = MultiPageMode.TimeInterval,
TimeInterval = new TimeInterval(0, 400)
}
};
image.Save("PartOfAnimation.gif", options);
}
Questo esempio mostra come creare un’immagine GIF e salvarla in un file.
[C#]
string dir = "c:\\temp\\";
// Crea un blocco GIF Frame di 100x100 px.
using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
{
// Riempi di rosso l'intero blocco.
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");
}
}
Crea immagini GIF multipagina utilizzando immagini raster a pagina singola.
[C#]
static void Main(string[] args)
{
// Carica fotogrammi
var frames = LoadFrames("Animation frames").ToArray();
// Crea un'immagine GIF usando il primo fotogramma
using (var image = new GifImage(new GifFrameBlock(frames[0])))
{
// Aggiungi cornici all'immagine GIF usando il metodo AddPage
for (var index = 1; index < frames.Length; index++)
{
image.AddPage(frames[index]);
}
// Salva l'immagine GIF
image.Save("Multipage.gif");
}
}
private static IEnumerable<RasterImage> LoadFrames(string directory)
{
foreach (var filePath in Directory.GetFiles(directory))
{
yield return (RasterImage)Image.Load(filePath);
}
}
Guarda anche
- class RasterCachedMultipageImage
- interface IMultipageImageExt
- spazio dei nomi Aspose.Imaging.FileFormats.Gif
- assemblea Aspose.Imaging