Class PngImage
Navne til: Aspose.Imaging.FileFormats.Png Sammensætning: Aspose.Imaging.dll (25.4.0)
Manipulere Portable Network Graphics (PNG) rasterbilleder med vores mangfoldige API,med støtte til komprimeringsniveauer og forskellige farver, herunderGrayscale, Indexed Color, TrueColor og alfa-kanaler. Seamlessly behandler XMP metadata,muliggør omfattende billedmetadataforvaltning, samtidig med at PNG-billeder let oplades,udføre forskellige manipulationer, anvende filtre og konvertere billeder til andre filerFormater for optimal versatilitet og tilpasning.
[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
De arvede medlemmer
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
Dette eksempel viser, hvordan man lader et PNG-billede fra en fil.
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(Det er int)
Initialiser et nyt objekt i Aspose.Imaging.FileFormats.Png. PngImage klasse ved at givebredde og højde parametre. Denne konstruktør forenkler oprettelsen af PNGbilleder ved at give udviklere mulighed for at angive dimensionerne direkte, letteeffektiv forvaltning af PNG-billeddata inden for deres applikationer.
public PngImage(int width, int height)
Parameters
width
int
Den bredde.
height
int
Den højde.
Examples
Dette eksempel viser, hvordan man skaber et PNG-billede af den angivne størrelse, fylder det med en solid farve og gemmer det til en fil.
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(String)
Opbygger en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse ved hjælp af vejenparametre til at angive placeringen af billedfilen til opladning. denne konstruktormuliggør udviklere til bekvemt at oprette PNG-billeder ved at lade dem fra en fil,Forenkling af processen med at arbejde med PNG-billeder i deres applikationer.
public PngImage(string path)
Parameters
path
string
Vejen til at oplade et billede.
Examples
Dette eksempel viser, hvordan man lader et PNG-billede fra en fil.
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)
Skaber en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse ved at give en rasterbilledet som en parameter. denne konstruktør tillader udviklere direkte at initialisere enPNG-billedsobjekt ved hjælp af et eksisterende rasterbillede, der forenkler processen medArbejde med PNG-billeder i deres applikationer.
public PngImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Det rasterbillede.
Examples
Dette eksempel viser, hvordan man lader PNG-billedet fra en BMP-bilde.
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(String, PngColorType)
Initialiserer en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse ved at angivevej til billedfilen og farve typen. Denne konstruktør gør det muligt atoprettelse af PNG-billeder fra filer med forskellige farve typer, der giverfleksibilitet i håndtering af forskellige billedformat.
public PngImage(string path, PngColorType colorType)
Parameters
path
string
Vejen til at oplade et billede.
colorType
PngColorType
Den farve type.
Examples
Dette eksempel viser, hvordan man lader et PNG-billede fra en fil med den angivne farve.
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)
Skaber en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse ved at angive enraster billede og en farve type. Denne konstruktør gør det muligt for udviklere at direktekonvertere rasterbilleder til PNG-format samtidig med at angive den ønskede farve-type,Det giver fleksibilitet i farveindstillingen.
public PngImage(RasterImage rasterImage, PngColorType colorType)
Parameters
rasterImage
RasterImage
Det rasterbillede.
colorType
PngColorType
Den farve type.
Examples
Dette eksempel viser, hvordan man lader PNG-billedet fra et BMP-bilde med den angivne farve.
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)
Skaber en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse ved at initialisere denDenne konstruktør gør det muligt for udviklere at oplade PNG-billeder direktefra en strøm, der giver fleksibilitet i billedoptagelse fra forskellige kilder.
public PngImage(Stream stream)
Parameters
stream
Stream
Strømmen til at oplade et billede.
Examples
Dette eksempel viser, hvordan man lader et PNG-billede fra en fil eller filstrøm.
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 og PngColorType)
Instant en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse, der angiverden ønskede bredde, højde og farve type parametre. denne konstruktør muliggørhurtig oprettelse af PNG-billeder med tilpassede dimensioner og farvekonfigurationer,at lette stramt billedegenerering for forskellige applikationer og arbejdsprocesser.
public PngImage(int width, int height, PngColorType colorType)
Parameters
width
int
Den bredde.
height
int
Den højde.
colorType
PngColorType
Den farve type.
Examples
Dette eksempel viser, hvordan man opretter et PNG-billede af den angivne størrelse med den specifikke farve type, fylder det med en solid farver og gemmer det til en fil.
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(PngOptions, int og int)
Initialiser en ny instans af Aspose.Imaging.FileFormats.Png. PngImage klasse, der indbefatterPNG-muligheder ved siden af bredde og højdeparametrer. Denne konstruktør styrkerudviklere til at oprette PNG-billeder med tilpassbare indstillinger og dimensioner,Det giver fleksibilitet i billedgenerationen til forskellige anvendelsesmuligheder.
public PngImage(PngOptions pngOptions, int width, int height)
Parameters
pngOptions
PngOptions
Det er png muligheder.
width
int
Den bredde.
height
int
Den højde.
Examples
Dette eksempel viser, hvordan man opretter et PNG-billede med de angivne muligheder, fylder det med en lineær gradientfarve og gemmer det til en fil.
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
Returnerer baggrundsfarven af billedet, hvis en er angivet.er nyttig for applikationer, der skal identificere og potentielt manipulereFarven på baggrunden af et billede.
public override Color BackgroundColor { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller fuldt gennemsigtige farver for en del af et TrueColor PNG-billede, der ikke understøtter alfa-kanal.
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
Returnerer bits pr. pixel værdi for billedet. Denne egenskab giver afgørendeinformation om farve dybde af billedet, der gør det muligt for udviklere atforstå niveauet af detaljer og farve nøjagtighed til stede i billeddata.
public override int BitsPerPixel { get; }
Ejendomsværdi
FileFormat
Returnerer formatet af filen, der er forbundet med billedindstillingen.ejendommen giver væsentlige oplysninger vedrørende filtypen, der muliggøreffektiv håndtering og behandling baseret på specifikke formatkrav.
public override FileFormat FileFormat { get; }
Ejendomsværdi
HasAlpha
Returnerer et booleanværdi, der angiver, om billedet har en alfa-kanal,som bestemmer dens gennemsigtighed. Denne ejendom er nyttig for applikationerder skal håndtere gennemsigtighed, så udviklere kan bestemme, omDer kræves yderligere behandling for at håndtere gennemsigtige områder i billedet.
public override bool HasAlpha { get; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man kontrollerer, om en PNG-billede understøtter alfa-kanal.
// 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
Retriever en boolean værdi, der angiver, om billedet har en baggrundsfarve.Denne ejendom er nyttig for applikationer, der skal bestemme, om et billedeindeholder en baggrundsfarve, som kan være vigtig for forskellige behandlingeropgaver som komposition, rendering eller eksport.
public override bool HasBackgroundColor { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller fuldt gennemsigtige farver for en del af et TrueColor PNG-billede, der ikke understøtter alfa-kanal.
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
Giver et booleanværdi, der angiver, om billedet indeholder en gennemsigtigDenne ejendom er afgørende for applikationer, der har brug for at håndteregennemsigtighed, der gør det muligt for udviklere at bestemme, om yderligere behandling erDet er nødvendigt at håndtere gennemsigtige områder i billedet.
public override bool HasTransparentColor { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller fuldt gennemsigtige farver for en del af et TrueColor PNG-billede, der ikke understøtter alfa-kanal.
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
Få billedets højde. Denne ejendom returnerer den vertikale dimension afbilledet, som giver udviklere mulighed for at bestemme dens størrelse i pixler langsDen vertikale axel.
public override int Height { get; }
Ejendomsværdi
HorizontalResolution
Gendanne eller ændre den horisontale opløsning af billedet.repræsenterer antallet af pixler pr. centimeter langs den horisontale axel afTilpasning af denne opløsning kan påvirke den fysiske størrelse af billedet, nårUdskrives eller fremstilles.
public override double HorizontalResolution { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller en PNG-billeds horisontale/vertikale opløsning.
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
Retrerer et booleanværdi, der angiver, om Aspose.Imaging.FileFormats.Png. PngImage erinterlaced, som bestemmer, om billeddata er lagret i en progressivfor hurtigere opladning eller overførsel.
public bool Interlaced { get; }
Ejendomsværdi
IsInterlaced
Returnerer et booleanværdi, der angiver, om billedinstanset er forbundet.Ejendommen er afgørende for at optimere loadingstrategier og sikre effektivitetudførelse i forbindelse med billedbehandling eller displayopgaver.
public bool IsInterlaced { get; }
Ejendomsværdi
RawDataFormat
Få adgang til billedets rådataformat.Denne ejendom giver indsigt ihvordan billeddata er struktureret internt, hvilket kan være nyttigt for avanceretBilledbehandling opgaver eller format konvertering.
public override PixelDataFormat RawDataFormat { get; }
Ejendomsværdi
Examples
Følgende eksempel lader PNG-billeder og trykker oplysninger om rådataformat og alfa-kanal.
// 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
Returnerer den gennemsigtige farve af billedet, hvis den eksisterer.værdifuldt for ansøgninger, der kræver præcis håndtering af gennemsigtige områderi billederne, der giver udviklere mulighed for at få adgang til og manipulere den specifikkeDen gennemsigtige farve anvendes.
public override Color TransparentColor { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller fuldt gennemsigtige farver for en del af et TrueColor PNG-billede, der ikke understøtter alfa-kanal.
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
Giver adgang til den vertikale opløsning af billedet. udviklere kan brugedenne ejendom til at tilbagetrække eller ændre resolutionsindstillingen, som angiver, atAntallet af pixels pr. centimeter (PPI) langs billedets vertikale axel.
public override double VerticalResolution { get; set; }
Ejendomsværdi
Examples
Følgende eksempel viser, hvordan man indstiller en PNG-billeds horisontale/vertikale opløsning.
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
Tillader tilbagetrækning af billedets bredde, der giver væsentlig informationom dens dimensioner. denne ejendom anvendes ofte af udviklere tilbestemmer billedets bredde, hvilket gør det muligt for dem at udføre forskellige operationer baseret påPå sin størrelse
public override int Width { get; }
Ejendomsværdi
XmpData
Tilgang til eller ændring af den Extensible Metadata Platform (XMP) metadata forbundetDenne ejendom gør det nemmere at udveksle, ændre ellertilføjelse af metadata, der muliggør omfattende forvaltning af billedrelateret information.
public override XmpPacketWrapper XmpData { get; set; }
Ejendomsværdi
Methods
GetDefaultOptions(Objekt[])
Få de standardmuligheder.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[]
og argumenterne.
Returns
Undtagelsesmuligheder
GetModifyDate(Bool)
Returnerer timestampen, der angiver den nyeste ændring af ressourcenDenne metode giver adgang til vitale metadata, hvilket gør det muligt for applikationer atat sikre, hvornår billedet var sidst ændret, hvilket gør det lettere at spore versionen ogindholdsstyring .
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
Hvis du er indstillet til ’true’, bruger du informationen fra FileInfo som standardværdi.
Returns
Datoen og tidspunktet for ressourcebilledet blev sidst ændret.
GetOriginalOptions()
Få de muligheder baseret på de oprindelige filindstillinger.Dette kan være nyttigt at holde bit dybde og andre parametre af det oprindelige billede uændret.For eksempel, hvis vi lader et sort-hvidt PNG-billede med 1 bit pr. pixel og gemmer det ved hjælp afAspose.Imaging.DataStreamSupporter.Save(System.String) metode, udgang PNG billede med 8-bit pr pixel vil blive produceret.For at undgå det og spare PNG-billeder med 1-bit pr. pixel, brug denne metode for at få de tilsvarende sparingsmuligheder og pass demtil Aspose.Imaging.Image.Save(System.String,_Wl17.ImagineOptionsBase) metode som den anden parameter.
public override ImageOptionsBase GetOriginalOptions()
Returns
Optioner baseret på de oprindelige filindstillinger.
OnPaletteChanged(Fællesskab, Fællesskab)
Det kaldes, når paletten ændres.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
Den gamle palette.
newPalette
IColorPalette
Den nye palette.
SaveData(Stream)
Beskyttelse af data.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
og strømmen.
UpdateDimensions(Det er int)
De opdaterede dimensioner.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Den nye bredde.
newHeight
int
Den nye højde.
UpdateMetadata()
Opdaterer billedet sidste ændringsdato og tid.
protected override void UpdateMetadata()