Class PngImage
Numele spaţiului: Aspose.Imaging.FileFormats.Png Asamblare: Aspose.Imaging.dll (25.4.0)
Manipularea graficelor de rețea portabilă (PNG) cu imagini de raster cu API-ul nostru versatil,susținerea nivelurilor de compresie și a diferitelor adâncimi de culoare, inclusivGrayscale, Indexed Color, TrueColor și canalele alfa. procesarea fără întârziere a metadata XMP,Permite gestionarea cuprinzătoare a metadatelor imaginii, în timp ce încărcarea ușoară a imaginilor PNG,efectuarea diferitelor manipulări, aplicarea filtrelor și convertirea imaginilor în alte fișiereFormate pentru o versatilitate optimă și personalizare.
[JsonObject(MemberSerialization.OptIn)]
public class PngImage : RasterCachedImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage ← RasterCachedImage ← PngImage
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata
Membrii moștenitori
RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.OnCached() , RasterCachedImage.OnPaletteChanged(IColorPalette, IColorPalette) , RasterCachedImage.IsCached , RasterImage.xmpData , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.ReleaseManagedResources() , RasterImage.UpdateMetadata() , RasterImage.UpdateDimensions(int, int) , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , RasterImage.DataLoader , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.UpdateContainer(Image) , Image.GetCanNotSaveMessage(ImageOptionsBase) , Image.GetFitRectangle(Rectangle) , Image.GetImage2Export(ImageOptionsBase, Rectangle, IImageExporter) , Image.GetFitRectangle(Rectangle, int[]) , Image.OnPaletteChanged(IColorPalette, IColorPalette) , Image.OnPaletteChanging(IColorPalette, IColorPalette) , Image.ReleaseManagedResources() , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.timeout , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.SaveData(Stream) , DataStreamSupporter.ReleaseManagedResources() , DataStreamSupporter.OnDataStreamContainerChanging(StreamContainer) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.ReleaseManagedResources() , DisposableObject.ReleaseUnmanagedResources() , DisposableObject.VerifyNotDisposed() , DisposableObject.Disposed , object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Acest exemplu arată cum să încărcați o imagine PNG dintr-un fișier.
string dir = "c:\\temp\\";
// Load a PNG image from a file.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(dir + "sample.png"))
{
// Transform the image to grayscale representation
pngImage.Grayscale();
// Save to a file.
pngImage.Save(dir + "sample.grayscale.png");
}
Constructors
PngImage(int, int)
Inițializați un nou obiect din clasa Aspose.Imaging.FileFormats.Png. PngImage prin furnizareaParametrii de latitudine și înălțime. Acest constructor simplifică crearea de PNGimagini, permițându-i dezvoltatorilor să specifice dimensiunile direct, facilitândgestionarea eficientă a datelor de imagine PNG în cadrul aplicațiilor lor.
public PngImage(int width, int height)
Parameters
width
int
în lățime .
height
int
înălţime .
Examples
Acest exemplu arată cum să creați o imagine PNG a dimensiunii specificate, să o umpleți cu o culoare solidă și să-l salvați într-un fișier.
string dir = "c:\\temp\\";
// Create a PNG image of 100x100 px.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(100, 100))
{
// Do some image processing, e.g. fill the entire image in red.
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(pngImage);
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
graphics.FillRectangle(brush, pngImage.Bounds);
// Save to a file.
pngImage.Save(dir + "output.png");
}
PngImage(Strângere)
Construiește o nouă instanță a clasei Aspose.Imaging.FileFormats.Png.pngImage folosind caleaparametru pentru a specifica locația fișierului de imagine pentru încărcare. acest constructorpermite dezvoltatorilor să creeze în mod convenabil imagini PNG prin încărcarea acestora dintr-un fișier,simplificarea procesului de lucru cu imagini PNG în aplicațiile lor.
public PngImage(string path)
Parameters
path
string
Calea de încărcare a unei imagini.
Examples
Acest exemplu arată cum să încărcați o imagine PNG dintr-un fișier.
string dir = "c:\\temp\\";
// Load a PNG image from a file.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(dir + "sample.png"))
{
// Transform the image to grayscale representation
pngImage.Grayscale();
// Save to a file.
pngImage.Save(dir + "sample.grayscale.png");
}
PngImage(RasterImage)
Creează o nouă instanță a clasei Aspose.Imaging.FileFormats.Png.pngImage prin furnizarea unui rasterimaginea ca un parametru. acest constructor permite dezvoltatorilor să inițieze direct oObiectul imaginii PNG folosind o imagine raster existentă, simplificând procesul delucrează cu imagini PNG în aplicațiile lor.
public PngImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Imaginea lui raster.
Examples
Acest exemplu arată cum să încărcați imaginea PNG dintr-o imagine BMP.
string dir = "c:\\temp\\";
// Load a TrueColor PNG image from a BMP image.
// First, create a temporal BMP image that will be a foundation for building a PNG image.
// You can also load BMP image from a file or use an image of any other raster format.
using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
{
// Fill the entire BMP image in red.
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
gr.FillRectangle(brush, bmpImage.Bounds);
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(bmpImage))
{
System.Console.WriteLine("The PNG color type: {0}", pngImage.GetOriginalOptions());
pngImage.Save(dir + "output.png");
}
}
PngImage(Strângere, PngColorType)
Inițializează o nouă instanță a clasei Aspose.Imaging.FileFormats.Png.pngImage prin specificareacalea către fișierul imaginii și tipul de culoare. acest constructor permitecrearea de imagini PNG din fișiere cu diferite tipuri de culori, oferindflexibilitate în gestionarea diferitelor formate de imagine.
public PngImage(string path, PngColorType colorType)
Parameters
path
string
Calea de încărcare a unei imagini.
colorType
PngColorType
Tipul de culoare.
Examples
Acest exemplu arată cum să încărcați o imagine PNG dintr-un fișier cu tipul de culoare specificat.
string dir = "c:\\temp\\";
// Load a PNG image from a file.
// Note that the colorful image will be converted to grayscale automatically.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(dir + "sample.png", Aspose.Imaging.FileFormats.Png.PngColorType.Grayscale))
{
// Save to a file.
pngImage.Save(dir + "sample.grayscale.png");
}
Exceptions
PngImage(RasterImage, PngColorType)
Creează o nouă instanță a clasei Aspose.Imaging.FileFormats.Png.pngImage prin specificarea unuiimaginea raster și un tip de culoare. acest constructor permite dezvoltatorilor săconvertează imagini raster în format PNG, specificând tipul de culoare dorit,oferă flexibilitate în reprezentarea culorilor.
public PngImage(RasterImage rasterImage, PngColorType colorType)
Parameters
rasterImage
RasterImage
Imaginea lui raster.
colorType
PngColorType
Tipul de culoare.
Examples
Acest exemplu arată cum să încărcați imaginea PNG dintr-o imagine BMP cu tipul de culoare specificat.
string dir = "c:\\temp\\";
// Load a grayscale PNG image from a colored BMP image.
// First, create a temporal BMP image that will be a foundation for building a PNG image.
// You can also load BMP image from a file or use an image of any other raster format.
using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
{
// Fill the entire BMP image in red.
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
gr.FillRectangle(brush, bmpImage.Bounds);
// The colors of the image pixels will be converted to their grayscale counterparts.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(bmpImage, Aspose.Imaging.FileFormats.Png.PngColorType.Grayscale))
{
pngImage.Save(dir + "output.grayscale.png");
}
}
PngImage(Stream)
Creează o nouă instanță a clasei Aspose.Imaging.FileFormats.Png. PngImage prin inițializarea acesteiaAcest constructor permite dezvoltatorilor să încărcească imagini PNG directde la un flux, oferind flexibilitate în retragerea imaginii din diferite surse.
public PngImage(Stream stream)
Parameters
stream
Stream
Fluxul pentru a încărca o imagine.
Examples
Acest exemplu arată cum să încărcați o imagine PNG dintr-un fișier sau un flux de fișiere.
string dir = "c:\\temp\\";
// Load a PNG image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.png"))
{
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(stream))
{
// Transform the image to grayscale representation
pngImage.Grayscale();
// Save to a file.
pngImage.Save(dir + "sample.grayscale.png");
}
}
PngImage(Int, int, PngColorType)
Instantiaza o noua instanta a clasei Aspose.Imaging.FileFormats.Png.pngImage, specificanddimensiunea dorită, înălțimea și tipul de culoare. acest constructor permitecrearea rapidă a imaginilor PNG cu dimensiuni personalizate și configurații de culoare,facilitarea generării de imagini simplificate pentru diverse aplicații și fluxuri de lucru.
public PngImage(int width, int height, PngColorType colorType)
Parameters
width
int
în lățime .
height
int
înălţime .
colorType
PngColorType
Tipul de culoare.
Examples
Acest exemplu arată cum să creați o imagine PNG a dimensiunii specificate cu tipul de culoare specificat, să o umpleți cu o culoare solidă și să-l salvați într-un fișier.
string dir = "c:\\temp\\";
// Create a grayscale PNG image of 100x100 px.
// All colors will be automatically converted to the grayscale format.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(100, 100, Aspose.Imaging.FileFormats.Png.PngColorType.Grayscale))
{
// Do some image processing, e.g. fill the entire image in red.
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(pngImage);
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
graphics.FillRectangle(brush, pngImage.Bounds);
// Save to a file.
pngImage.Save(dir + "output.grayscale.png");
}
PngImage(Cuvânt cheie: int, int)
Inițializați o nouă instanță a clasei Aspose.Imaging.FileFormats.Png. PngImage, care includeOpțiunile PNG alături de parametrii de lățime și înălțimi. Acest constructor permitedezvoltatorii pentru a crea imagini PNG cu setări și dimensiuni personalizabile,oferă flexibilitate în generația de imagini pentru diverse cazuri de utilizare.
public PngImage(PngOptions pngOptions, int width, int height)
Parameters
pngOptions
PngOptions
Opţiuni de png.
width
int
în lățime .
height
int
înălţime .
Examples
Acest exemplu arată cum să creați o imagine PNG cu opțiunile specificate, să o umpleți cu culori gradiente lineare și să-l salvați într-un fișier.
string dir = "c:\\temp\\";
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
// The number of bits per color channel
createOptions.BitDepth = 8;
// Each pixel is a (red, green, blue) triple followed by the alpha component.
createOptions.ColorType = Imaging.FileFormats.Png.PngColorType.TruecolorWithAlpha;
// The maximum level of compression.
createOptions.CompressionLevel = 9;
// Usage of filters allows to compress continuous tonal images more effectively.
createOptions.FilterType = Aspose.Imaging.FileFormats.Png.PngFilterType.Sub;
// Use progressive loading
createOptions.Progressive = true;
// Create a PNG image with custom parameters.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(createOptions, 100, 100))
{
Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
new Aspose.Imaging.Point(0, 0),
new Aspose.Imaging.Point(pngImage.Width, pngImage.Height),
Aspose.Imaging.Color.Blue,
Aspose.Imaging.Color.Transparent);
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(pngImage);
// Fill the image with a semi-transparent gradient.
graphics.FillRectangle(gradientBrush, pngImage.Bounds);
// Save to a file.
pngImage.Save(dir + "output.explicitoptions.png");
}
Properties
BackgroundColor
Retrează culoarea de fundal a imaginii, dacă este specificată.este util pentru aplicații care trebuie identificate și potențial manipulateculoarea de fundal a unei imagini.
public override Color BackgroundColor { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată cum să stabiliți culori complet transparente pentru o parte a unei imagini TrueColor PNG care nu susține canalul alfa.
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;
// Create a TrueColor PNG image of 100x100 px.
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
// All red pixels will be considered as fully transparent.
pngImage.TransparentColor = Aspose.Imaging.Color.Red;
pngImage.HasTransparentColor = true;
// All transparent pixels will have a background color.
pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
pngImage.HasBackgroundColor = true;
// Fill the entire image with white color.
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);
// Fill the top-left quarter of the image with the transparent color.
// This makes the top-left quarter colored in the background color.
Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);
pngImage.Save();
}
BitsPerPixel
Reduceți valorile bits pe pixel pentru imagine. Această proprietate oferă o valoare crucialăinformații cu privire la adâncimea de culoare a imaginii, permițând dezvoltatorilor săînțelege nivelul de detaliu și precizia culorii prezente în datele imaginii.
public override int BitsPerPixel { get; }
Valoarea proprietății
FileFormat
Retrează formatul fișierului asociat cu exemplul imaginii.proprietatea furnizează informații esențiale cu privire la tipul de fișier, care permitgestionarea și prelucrarea eficientă pe baza cerințelor specifice de format.
public override FileFormat FileFormat { get; }
Valoarea proprietății
HasAlpha
Returnează o valoare booleană care indică dacă imaginea are un canal alfa,care determină transparența sa. Această proprietate este utilă pentru aplicațiinecesitatea de a gestiona transparența, permițând dezvoltatorilor să determine dacăProcesarea suplimentară este necesară pentru a gestiona zonele transparente ale imaginii.
public override bool HasAlpha { get; }
Valoarea proprietății
Examples
Următorul exemplu arată cum să verificați dacă o imagine PNG susține un canal alfa.
// Get all supported PNG color types.
System.Array colorTypes = System.Enum.GetValues(typeof(Aspose.Imaging.FileFormats.Png.PngColorType));
foreach (Aspose.Imaging.FileFormats.Png.PngColorType colorType in colorTypes)
{
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Sources.StreamSource(new System.IO.MemoryStream());
createOptions.ColorType = colorType;
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
if (pngImage.HasAlpha)
{
System.Console.WriteLine("A {0} PNG image supports alpha channel", createOptions.ColorType);
}
else
{
System.Console.WriteLine("A {0} PNG image doesn't support alpha channel", createOptions.ColorType);
}
}
}
// The output looks like this:
// A Grayscale PNG image doesn't support alpha channel
// A Truecolor PNG image doesn't support alpha channel
// A IndexedColor PNG image doesn't support alpha channel
// A GrayscaleWithAlpha PNG image supports alpha channel
// A TruecolorWithAlpha PNG image supports alpha channel
HasBackgroundColor
Retrează o valoare booleană care indică dacă imaginea are o culoare de fundal.Această proprietate este utilă pentru aplicațiile care trebuie să determine dacă o imagineinclude o culoare de fundal, care poate fi importantă pentru diferite prelucrărisarcini, cum ar fi compoziția, renderarea sau exportarea.
public override bool HasBackgroundColor { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată cum să stabiliți culori complet transparente pentru o parte a unei imagini TrueColor PNG care nu susține canalul alfa.
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;
// Create a TrueColor PNG image of 100x100 px.
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
// All red pixels will be considered as fully transparent.
pngImage.TransparentColor = Aspose.Imaging.Color.Red;
pngImage.HasTransparentColor = true;
// All transparent pixels will have a background color.
pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
pngImage.HasBackgroundColor = true;
// Fill the entire image with white color.
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);
// Fill the top-left quarter of the image with the transparent color.
// This makes the top-left quarter colored in the background color.
Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);
pngImage.Save();
}
HasTransparentColor
Oferă o valoare booleană care indică dacă imaginea conține oAceastă proprietate este esențială pentru aplicațiile care trebuie să se ocupe detransparență, permițând dezvoltatorilor să determine dacă prelucrarea suplimentară estenecesar să se ocupe de regiuni transparente în imagine.
public override bool HasTransparentColor { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată cum să stabiliți culori complet transparente pentru o parte a unei imagini TrueColor PNG care nu susține canalul alfa.
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;
// Create a TrueColor PNG image of 100x100 px.
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
// All red pixels will be considered as fully transparent.
pngImage.TransparentColor = Aspose.Imaging.Color.Red;
pngImage.HasTransparentColor = true;
// All transparent pixels will have a background color.
pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
pngImage.HasBackgroundColor = true;
// Fill the entire image with white color.
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);
// Fill the top-left quarter of the image with the transparent color.
// This makes the top-left quarter colored in the background color.
Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);
pngImage.Save();
}
Height
Obțineți înălțimea imaginii. Această proprietate întoarce dimensiunea verticală aimaginea, permiţând dezvoltatorilor să-şi determine dimensiunea în pixeli de-a lungulAxa verticală.
public override int Height { get; }
Valoarea proprietății
HorizontalResolution
Recuperarea sau modificarea rezoluției orizontale a imaginii.reprezentă numărul de pixeli pe inci de-a lungul axei orizontale aAdaptarea acestei rezoluții poate afecta dimensiunea fizică a imaginii atunci cândimprimate sau afișate.
public override double HorizontalResolution { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată modul de setare a rezoluției orizontale/verticale a unei imagini PNG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
// Get horizontal and vertical resolution of the PngImage.
double horizontalResolution = pngImage.HorizontalResolution;
double verticalResolution = pngImage.VerticalResolution;
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", horizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0)
{
// Use the SetResolution method for updating both resolution values in a single call.
System.Console.WriteLine("Set resolution values to 96 dpi");
pngImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", pngImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", pngImage.VerticalResolution);
}
}
Interlaced
Retrează o valoare booleană care indică dacă Aspose.Imaging.FileFormats.Png.pngImage esteinterlaced, care determină dacă datele imaginii sunt stocate într-omoduri pentru încărcare sau transmitere mai rapidă.
public bool Interlaced { get; }
Valoarea proprietății
IsInterlaced
Întoarce o valoare booleană care indică dacă instanta imaginii este interconectată.proprietatea este esențială pentru optimizarea strategiilor de încărcare și asigurarea eficiențeiperformanță în timpul procesării imaginii sau a sarcinilor de afișare.
public bool IsInterlaced { get; }
Valoarea proprietății
RawDataFormat
Accesul la formatul de date crude al imaginii.Această proprietate oferă o perspectivă asupramodul în care datele imaginii sunt structurate intern, ceea ce poate fi util pentru avansateObiectivele de procesare a imaginii sau conversia formatului.
public override PixelDataFormat RawDataFormat { get; }
Valoarea proprietății
Examples
Următorul exemplu încărcă imagini PNG și imprimează informații despre formatul de date crude și canalul alfa.
// The PNG images to load.
string[] fileNames = new string[]
{
@"c:\temp\sample.png",
@"c:\temp\alpha.png",
};
foreach (string fileName in fileNames)
{
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(fileName))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
System.Console.WriteLine("ImageFile={0}, FileFormat={1}, HasAlpha={2}", fileName, pngImage.RawDataFormat, pngImage.HasAlpha);
}
}
// The output may look like this:
// ImageFile=c:\temp\sample.png, FileFormat=Rgb24Bpp, used channels: 8,8,8, HasAlpha=False
// ImageFile=c:\temp\alpha.png, FileFormat=RGBA32Bpp, used channels: 8,8,8,8, HasAlpha=True
TransparentColor
Retrează culoarea transparentă a imaginii, dacă există.valoroase pentru aplicații care necesită gestionarea precisă a zonelor transparenteîn interiorul imaginilor, permițând dezvoltatorilor să acceseze și să manipulezeculorile transparente utilizate.
public override Color TransparentColor { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată cum să stabiliți culori complet transparente pentru o parte a unei imagini TrueColor PNG care nu susține canalul alfa.
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;
// Create a TrueColor PNG image of 100x100 px.
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
// All red pixels will be considered as fully transparent.
pngImage.TransparentColor = Aspose.Imaging.Color.Red;
pngImage.HasTransparentColor = true;
// All transparent pixels will have a background color.
pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
pngImage.HasBackgroundColor = true;
// Fill the entire image with white color.
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);
// Fill the top-left quarter of the image with the transparent color.
// This makes the top-left quarter colored in the background color.
Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);
pngImage.Save();
}
VerticalResolution
Oferă acces la rezoluția verticală a imaginii. dezvoltatorii pot folosiaceastă proprietate pentru a retrage sau modifica setarea de rezoluție, care indicăNumărul de pixeli pe inci (PPI) de-a lungul axului vertical al imaginii.
public override double VerticalResolution { get; set; }
Valoarea proprietății
Examples
Următorul exemplu arată modul de setare a rezoluției orizontale/verticale a unei imagini PNG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
// Get horizontal and vertical resolution of the PngImage.
double horizontalResolution = pngImage.HorizontalResolution;
double verticalResolution = pngImage.VerticalResolution;
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", horizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0)
{
// Use the SetResolution method for updating both resolution values in a single call.
System.Console.WriteLine("Set resolution values to 96 dpi");
pngImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", pngImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", pngImage.VerticalResolution);
}
}
Width
Permite retragerea lățimii imaginii, furnizând informații esențialeîn ceea ce privește dimensiunile sale. această proprietate este adesea utilizată de dezvoltatori pentrudetermină lățimea imaginii, permițându-le să efectueze diferite operațiuni bazate peÎn mărimea sa
public override int Width { get; }
Valoarea proprietății
XmpData
Accesul sau modificarea platformei Extensibile Metadata (XMP) asociate cu metadataAceastă proprietate facilitează extragerea, modificarea sauadăugarea de metadate, permițând gestionarea cuprinzătoare a informațiilor legate de imagine.
public override XmpPacketWrapper XmpData { get; set; }
Valoarea proprietății
Methods
GetDefaultOptions(Obiectul[])
Obțineți opțiunile default.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[]
Argumentele sunt.
Returns
Opțiuni deficitare
GetModifyDate(Boulă)
Retrieves timestamp indicând cea mai recentă modificare a resursuluiAceastă metodă oferă acces la metadate vitale, permițând aplicațiilor săverifica când a fost ultima modificare a imaginii, facilitând urmărirea versiunii șiManagementul conținutului.
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
în cazul în care este setat la „true”, utilizați informațiile din FileInfo ca valoare predefinită.
Returns
Data și timpul a fost ultima modificare a imaginii de resurse.
GetOriginalOptions()
Obține opțiunile bazate pe setările de fișier originale.Acest lucru poate fi util pentru a menține adâncimea și alte parametri ale imaginii originale inalterate.De exemplu, dacă încărcăm o imagine PNG alb-negru cu 1 bit pe pixel și apoi o salvăm folosindAspose.Imaging.DataStreamSupporter.Save(System.String) metoda, va fi produs imaginea PNG de ieșire cu 8 bit pe pixel.Pentru a evita acest lucru și pentru a salva imaginea PNG cu 1 bit pe pixel, utilizați această metodă pentru a obține opțiunile de salvare corespunzătoare și a le trecela metoda Aspose.Imaging.Image.Save(System.String,_W L17.ImagineOptionsBase) ca al doilea parametru.
public override ImageOptionsBase GetOriginalOptions()
Returns
Opțiunile bazate pe setările de fișier originale.
OnPaletteChanged(Cuvânt cheie, Cuvânt cheie)
Se numește când se schimbă paleta.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
Vechea paletă
newPalette
IColorPalette
În noua paletă.
SaveData(Stream)
salvare a datelor.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
şi fluxul .
UpdateDimensions(int, int)
Dimensiunile actualizării.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
În noua lățime.
newHeight
int
Înălţimea nouă.
UpdateMetadata()
Actualizează data și timpul ultimei modificări a imaginii.
protected override void UpdateMetadata()