Class PngImage
Названий на: Aspose.Imaging.FileFormats.Png Асамблея: Aspose.Imaging.dll (25.4.0)
Маніпулювати графіку портативної мережі (PNG) зображення растер з нашим різноманітним API,забезпечує підтримку рівнів компресії та різних кольорових глибин, включаючиGrayscale, Indexed Color, TrueColor, і альфа-канали. безперервно обробляти метадані XMP,дозволяти всебічне управління метаданими зображеннями, а також легко завантажувати PNG-фотографії,здійснювати різні маніпуляції, застосовувати фільтри та конвертувати зображення в інші файли;Формати для оптимальної різноманітності та персоналізації.
[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
Нападні члени
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
Цей приклад показує, як завантажити зображення PNG з файлу.
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(ІТ, ІТ)
Ініціалізуйте новий об’єкт класу Aspose.Imaging.FileFormats.Png. PngImage, надаючиШирина і висота параметрів. Цей конструктор полегшує створення PNGзображення, дозволяючи розробникам безпосередньо визначати розміри, сприяючиЕфективне управління даними зображення PNG в межах їх застосування.
public PngImage(int width, int height)
Parameters
width
int
Про широту .
height
int
У висоті .
Examples
Цей приклад показує, як створити зображення PNG зазначеного розміру, заповнити його міцним кольором і зберегти його в файл.
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(стрічка)
Створює нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage за допомогою маршрутупараметр для визначення місця розташування файлу зображення для завантаження.дозволяє розробникам зручно створювати PNG зображення, завантажуючи їх з файлу,спрощення процесу роботи з зображеннями PNG у своїх додатках.
public PngImage(string path)
Parameters
path
string
Шлях до завантаження зображення.
Examples
Цей приклад показує, як завантажити зображення PNG з файлу.
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)
Створює нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, надаючи растерзображення як параметр. Цей конструктор дозволяє розробникам безпосередньо ініціюватиPNG зображення об’єкт, використовуючи існуючий растерну картину, ускладнюючи процесПрацювати з зображеннями PNG у своїх додатках.
public PngImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Створення Raster Image.
Examples
Цей приклад показує, як завантажити PNG зображення з 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(Стрічка, PngColorType)
Ініціалізує нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, вказуючиШлях до файлу зображення і типу кольору.Цей конструктор дозволяє зручностворення зображень PNG з файлів різних типів кольорів, що забезпечуютьГнучкість у використанні різних форматів зображення.
public PngImage(string path, PngColorType colorType)
Parameters
path
string
Шлях до завантаження зображення.
colorType
PngColorType
Тип кольору .
Examples
Цей приклад показує, як завантажити PNG зображення з файлу з зазначеним типом кольору.
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(Створення PngColorType)
Створює нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, вказуючизображення растер і тип кольору. Цей конструктор дозволяє розробникам безпосередньоконвертувати зображення растер у формат PNG при визначенні бажаного типу кольору,Пропонуємо гнучкість у кольоровій представленні.
public PngImage(RasterImage rasterImage, PngColorType colorType)
Parameters
rasterImage
RasterImage
Створення Raster Image.
colorType
PngColorType
Тип кольору .
Examples
Цей приклад показує, як завантажити PNG зображення з BMP з зазначеним типом кольору.
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)
Створює нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, ініціюючи їїЦей конструктор дозволяє розробникам завантажувати PNG зображення безпосередньовід потоку, що забезпечує гнучкість у зображенні відновлення з різних джерел.
public PngImage(Stream stream)
Parameters
stream
Stream
Потік для завантаження зображення.
Examples
Цей приклад показує, як завантажити зображення PNG з файлу або потоку файлів.
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(Інте, Інт, ПнгColorType)
Налаштуйте свіжу інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, вказуючибажаної ширини, висоти, і параметрів типу кольору.Цей конструктор дозволяєшвидке створення PNG зображень з пристосованими розмірами та кольоровими конфігураціями,сприяння ускладненому генеруванню зображень для різних додатків та робочих потоків.
public PngImage(int width, int height, PngColorType colorType)
Parameters
width
int
Про широту .
height
int
У висоті .
colorType
PngColorType
Тип кольору .
Examples
Цей приклад показує, як створити зображення PNG визначеного розміру за допомогою визначених типів кольорів, заповнити його міцним кольором і зберегти його в файл.
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(Пінгопціон, int і int)
Ініціалізуйте нову інстанцію класу Aspose.Imaging.FileFormats.Png. PngImage, включаючиPNG варіанти поряд з шириною і висотою параметрів.розробники створюють PNG зображення з налаштуваннями та розмірами,забезпечує гнучкість у виробництві зображень для різноманітних випадків використання.
public PngImage(PngOptions pngOptions, int width, int height)
Parameters
pngOptions
PngOptions
Вибір варіантів ПНК.
width
int
Про широту .
height
int
У висоті .
Examples
Цей приклад показує, як створити PNG зображення за допомогою зазначених варіантів, заповнити його лінійним градієнтним кольором і зберегти його в файл.
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
Відновлює колір фону зображення, якщо одна з них зазначена.корисний для додатків, які потребують ідентифікації та потенційно маніпулюютьКолір фону зображення.
public override Color BackgroundColor { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити цілком прозорі кольори для частини зображення TrueColor PNG, яке не підтримує альфа-канал.
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
Відновлення бітів за пікселем значення для зображення.Ця властивість надає ключове значенняінформація про кольорову глибину зображення, що дозволяє розробникамрозуміння рівня деталей і точності кольорів, що присутні в даних зображення.
public override int BitsPerPixel { get; }
вартість нерухомості
FileFormat
Відновлює формат файлу, пов’язаний з прикладом зображення.власність надає необхідну інформацію щодо типу файлу, що дозволяєЕфективне обробка та обмін на основі конкретних вимог формату.
public override FileFormat FileFormat { get; }
вартість нерухомості
HasAlpha
повертає булеанну вартість, що вказує на те, чи має зображення альфа-канал,які визначають її прозорість.Ця власність корисна для застосуваннянеобхідність обробки прозорості, що дозволяє розробникам визначати, чиДодаткова переробка необхідна для обробки прозорих областей зображення.
public override bool HasAlpha { get; }
вартість нерухомості
Examples
Наступний приклад показує, як перевірити, чи підтримує зображення PNG альфа-канал.
// 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
Повертає булеанну вартість, яка вказує на те, чи має зображення колір фону.Ця власність є корисною для додатків, які повинні визначити, чи є зображеннявключає в себе колір фону, який може бути важливим для різних процесівтаких завдань, як композиція, рендеринг або експорт.
public override bool HasBackgroundColor { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити цілком прозорі кольори для частини зображення TrueColor PNG, яке не підтримує альфа-канал.
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
забезпечує булеанну вартість, що вказує на те, чи містить зображення прозорістьЦей об’єкт є ключовим для додатків, які потребують керуванняпрозорість, що дозволяє розробникам визначити, чи є додатковим обробкоюнеобхідні для обробки транспарентних регіонів у зображенні.
public override bool HasTransparentColor { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити цілком прозорі кольори для частини зображення TrueColor PNG, яке не підтримує альфа-канал.
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
Знайдіть висоту зображення.Ця власність повертає вертикальне вимірюваннязображення, що дозволяє розробникам визначати його розмір у пікселях уздовжВертикальна осі
public override int Height { get; }
вартість нерухомості
HorizontalResolution
Відновлення або зміна горизонтальної роздільної здатності зображення.- кількість пікселів на дюйм уздовж горизонтальної осіНалаштування цієї роздільної здатності може вплинути на фізичний розмір зображення, колидруковані або показані.
public override double HorizontalResolution { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити горизонтальне/вертикальне розділення зображення 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
Повертає булеанну вартість, яка вказує на те, чи є Aspose.Imaging.FileFormats.Png. PngImageвзаємопов’язаний, що визначає, чи зберігаються дані зображення в прогресивнійспособи швидкого завантаження або передачі.
public bool Interlaced { get; }
вартість нерухомості
IsInterlaced
Повертає булеанну вартість, що вказує на те, чи взаємопов’язана інстанція зображення.власність є ключовим для оптимізації стратегій завантаження та забезпечення ефективностівиконання завдань під час обробки зображень або показу.
public bool IsInterlaced { get; }
вартість нерухомості
RawDataFormat
Доступ до формату сировини даних зображення.Ця власність надає уявлення прояк структуровані дані зображення внутрішньо, що може бути корисним для передовихобробка зображень або конвертація форматів.
public override PixelDataFormat RawDataFormat { get; }
вартість нерухомості
Examples
Наступний приклад завантажує зображення PNG і друкує інформацію про формат сирої даної інформації та альфа-канал.
// 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
відновлює прозорість кольору зображення, якщо вона існує.Важливі для заявок, які потребують точного обробки прозорих областейв межах зображень, що дозволяє розробникам отримати доступ і маніпулювати конкретнимиВикористовується прозорий колір.
public override Color TransparentColor { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити цілком прозорі кольори для частини зображення TrueColor PNG, яке не підтримує альфа-канал.
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
Забезпечує доступ до вертикального розділу зображення. розробники можуть використовуватитакої власності для отримання або зміни налаштування резолюції, що вказує наКількість пікселів на дюйм (PPI) уздовж вертикальної осі зображення.
public override double VerticalResolution { get; set; }
вартість нерухомості
Examples
Наступний приклад показує, як встановити горизонтальне/вертикальне розділення зображення 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
Дозволяє відновлення ширини зображення, надаючи необхідну інформаціюЦей матеріал часто використовується розробниками длявизначити ширину зображення, що дозволяє їм виконувати різні операції на основіУ своїй розмірі
public override int Width { get; }
вартість нерухомості
XmpData
Доступ або зміна метаданів, пов’язаних з розширеною платформою (XMP)Ця власність сприяє екстракції, модифікації абододавання метаданів, що дозволяє всебічне управління інформацією, пов’язаною з зображенням.
public override XmpPacketWrapper XmpData { get; set; }
вартість нерухомості
Methods
GetDefaultOptions(Об’єкт[])
Використовуйте стандартні варіанти.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[ ]
І аргументи .
Returns
Дефіцитні варіанти
GetModifyDate(Бол)
Повторює часовий проміжок, що вказує на найновішу зміну ресурсуЦей метод забезпечує доступ до життєво важливих метадатів, що дозволяєперевіряти, коли зображення було останнім часом змінено, сприяти відстеженню версії таУправління контентом.
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
Якщо налаштуватися на “справжнє”, використовуйте інформацію з FileInfo як стандартну вартість.
Returns
Дата і час останньої модифікації зображення ресурсу.
GetOriginalOptions()
Виберіть варіанти на основі оригінальних налаштувань файлу.Це може бути корисним для збереження дрібної глибини та інших параметрів оригінального зображення без змін.Наприклад, якщо ми завантажуємо чорно-білий PNG зображення з 1 бітом на піксель, а потім збережемо його за допомогоюAspose.Imaging.DataStreamSupporter.Save(System.String) метод, вихід PNG з 8-бітним на піксель буде вироблятися.Щоб уникнути цього і зберегти PNG зображення з 1 бітом на піксель, використовуйте цей метод, щоб отримати відповідні варіанти збереження і пройти їхдо методу Aspose.Imaging.Image.Save(System.String,_Wl17.ImageOptionsBase) як другий параметр.
public override ImageOptionsBase GetOriginalOptions()
Returns
Вибір варіантів, заснованих на оригінальних файлових налаштуваннях.
OnPaletteChanged(Створення IColorPalette)
Зателефонуйте, коли змінюється палет.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
Старий палець
newPalette
IColorPalette
Новий палець
SaveData(Stream)
Збереження даних .
protected override void SaveData(Stream stream)
Parameters
stream
Stream
і потоку .
UpdateDimensions(ІТ, ІТ)
Актуальні виміри оновлення.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Нові ширини .
newHeight
int
Нові висоти .
UpdateMetadata()
Оновлює дату і час останньої модифікації зображення.
protected override void UpdateMetadata()