ApngImage
Contenuti
[
Nascondere
]ApngImage class
L’immagine PNG animata.
public sealed class ApngImage : RasterCachedMultipageImage, IMultipageImageExt
Costruttori
Nome | Descrizione |
---|---|
ApngImage(ApngOptions, int, int) | Inizializza una nuova istanza diApngImage classe. |
Proprietà
Nome | Descrizione |
---|---|
AutoAdjustPalette { get; set; } | Ottiene o imposta un valore che indica se regolare automaticamente la tavolozza. |
override BackgroundColor { get; set; } | Ottiene o imposta un valore per il colore di sfondo. |
override BitsPerPixel { get; } | Ottiene il numero di bit dell’immagine per pixel. |
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. |
DefaultFrameTime { get; set; } | Ottiene o imposta la durata del frame predefinita. Utilizzato durante la creazione di nuovi frame. |
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. |
virtual HasBackgroundColor { get; set; } | Ottiene o imposta un valore che indica se l’immagine ha il colore di sfondo. |
override HasTransparentColor { get; } | Ottiene un valore che indica se l’immagine 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. |
Interlaced { get; } | Ottiene un valore che indica se questoPngImage è intrecciato. |
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. |
IsRawDataAvailable { get; } | Ottiene un valore che indica se è disponibile il caricamento dei dati grezzi. |
NumPlays { get; set; } | Ottiene o imposta il numero di volte in cui eseguire il ciclo dell’animazione. 0 indica il ciclo infinito. |
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. |
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. |
virtual TransparentColor { get; set; } | Ottiene il colore trasparente dell’immagine. |
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 |
---|---|
AddFrame() | Aggiunge una nuova cornice alla fine della propria raccolta di cornici. Verrà creata una nuova cornice in base alle dimensioni dell’immagine corrente. |
AddFrame(RasterImage) | Aggiunge un nuovo frame alla fine della propria raccolta di frame. Il contenuto del nuovo frame verrà riempito dall’immagine specificata. |
AddFrame(RasterImage, uint) | Aggiunge un nuovo frame alla fine della propria raccolta di frame. Il contenuto del nuovo frame verrà riempito dall’immagine specificata. |
AddPage(RasterImage) | Aggiunge la pagina all’immagine. |
override AdjustBrightness(int) | Regolazione di abrightness per immagine. |
override AdjustContrast(float) | Image 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. |
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. |
override 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. |
override 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 |
InsertFrame(int) | Inserisce un nuovo frame nella propria raccolta di frame all’indice specificato. Verrà creato un nuovo frame in base alle dimensioni dell’immagine corrente. |
InsertFrame(int, RasterImage) | Inserisce il nuovo frame nella propria raccolta di frame all’indice specificato. Il contenuto del nuovo frame verrà riempito dall’immagine specificata. |
InsertFrame(int, RasterImage, uint) | Inserisce il nuovo frame nella propria raccolta di frame all’indice specificato. Il contenuto del nuovo frame verrà riempito dall’immagine specificata. |
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. |
PopFrameAt(int) | Rimuove e restituisce il frame all’indice specificato della propria raccolta di frame. |
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. |
RemoveAllFrames() | Rimuove tutti i frame dalla propria raccolta di frame. |
RemoveFrameAt(int) | Rimuove il frame in corrispondenza dell’indice specificato della propria raccolta di frame. Il frame da eliminare verrà eliminato. |
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. |
ResetDefaultImage() | Elimina un’immagine predefinita impostata in precedenza. Dopodiché, l’immagine predefinita è il primo fotogramma nella propria raccolta di fotogrammi (non può essere eliminata utilizzando questo metodo). |
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. |
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. |
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. |
SetDefaultImage(RasterImage) | Imposta l’immagine raster specificata come immagine predefinita dell’animazione corrente. |
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
L’esempio seguente mostra come esportare il formato di file apng APNG da un altro formato multipagina non animato.
[C#]
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("img4.tif")) {
// Impostazione della durata del frame predefinita
image.Save("img4.tif.500ms.png", new ApngOptions() { DefaultFrameTime = 500 }); // 500 ms
image.Save("img4.tif.250ms.png", new ApngOptions() { DefaultFrameTime = 250 }); // 250 ms
}
L’esempio seguente mostra come esportare in formato file APNG.
[C#]
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("Animation1.webp")) {
// Esporta in animazione APNG con cicli di animazione illimitati come impostazione predefinita
image.Save("Animation1.webp.png", new ApngOptions());
// Impostazione dei cicli di animazione
image.Save("Animation2.webp.png", new ApngOptions() { NumPlays = 5 }); // 5 cicli
}
L’esempio seguente mostra come creare un’immagine APNG da un’altra immagine raster a pagina singola.
[C#]
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 secondo
const int FrameDuration = 70; // 70 ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// È possibile impostare il frame time predefinito dell'immagine qui: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Pulizia perché l'immagine contiene un frame per impostazione predefinita
apngImage.RemoveAllFrames();
// aggiungi il primo fotogramma
apngImage.AddFrame(sourceImage);
// aggiungi frame intermedi
for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
{
apngImage.AddFrame(sourceImage);
ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
lastFrame.AdjustGamma(gamma);
}
// aggiungi l'ultimo fotogramma
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Guarda anche
- class RasterCachedMultipageImage
- interface IMultipageImageExt
- spazio dei nomi Aspose.Imaging.FileFormats.Apng
- assemblea Aspose.Imaging