Class PngImage
Nama dari : Aspose.Imaging.FileFormats.Png Pengumpulan: Aspose.Imaging.dll (25.4.0)
Memanipulasi grafis jaringan portabel (PNG) gambar raster dengan API yang luas kami,memiliki dukungan untuk tingkat kompresi dan berbagai kedalaman warna termasukGrayscale, Color Indexed, TrueColor, dan saluran alfa. memproses metadata XMP,memungkinkan pengelolaan metadata gambar yang komprehensif, sambil memuat gambar PNG dengan mudah,melakukan berbagai manipulasi, menerapkan filter, dan mengkonversi gambar ke file lainFormat untuk versatilitas optimal dan penyesuaian.
[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
anggota yang diwarisi
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
Contoh ini menunjukkan cara memuat gambar PNG dari file.
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(dengan int, int)
Memulai objek baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage dengan memberikanparameter lebar dan ketinggian. konstruktor ini memfasilitasi penciptaan PNGgambar dengan memungkinkan pengembang untuk menentukan dimensi secara langsung, memfasilitasiPengelolaan yang efisien dari data gambar PNG dalam aplikasi mereka.
public PngImage(int width, int height)
Parameters
width
int
dengan luasnya.
height
int
ketinggian yang
Examples
Contoh ini menunjukkan bagaimana untuk membuat gambar PNG dari ukuran yang ditentukan, mengisi dengan warna yang kukuh dan menyimpannya ke file.
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)
Membangun contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage menggunakan jalurparameter untuk menentukan lokasi file gambar untuk dimuat.memungkinkan pengembang untuk membuat gambar PNG dengan mudah dengan memuatnya dari file,memudahkan proses bekerja dengan gambar PNG dalam aplikasi mereka.
public PngImage(string path)
Parameters
path
string
Jalan untuk mengisi gambar.
Examples
Contoh ini menunjukkan cara memuat gambar PNG dari file.
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)
Mencipta contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage dengan memberikan rastergambar sebagai parameter. konstruktor ini memungkinkan pengembang untuk secara langsung memulai sebuahObjek gambar PNG menggunakan gambar raster yang ada, mempercepat prosesbekerja dengan gambar PNG dalam aplikasi mereka.
public PngImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Gambar dari raster.
Examples
Contoh ini menunjukkan cara memuat gambar PNG dari gambar 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(Titik, PngColorType)
Inicialisasi contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage dengan menentukanjalur ke file gambar dan jenis warna. konstruktor ini memungkinkan untukmembuat gambar PNG dari file dengan jenis warna yang berbeda, memberikanfleksibilitas dalam mengendalikan berbagai format gambar.
public PngImage(string path, PngColorType colorType)
Parameters
path
string
Jalan untuk mengisi gambar.
colorType
PngColorType
Jenis warna tersebut.
Examples
Contoh ini menunjukkan cara memuat gambar PNG dari file dengan jenis warna yang ditentukan.
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 dan PngColorType)
Mencipta contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage dengan menentukangambar raster dan jenis warna. konstruktor ini memungkinkan pengembang untuk langsungKonversi gambar raster ke format PNG sambil menentukan jenis warna yang diinginkan,memberikan fleksibilitas dalam representasi warna.
public PngImage(RasterImage rasterImage, PngColorType colorType)
Parameters
rasterImage
RasterImage
Gambar dari raster.
colorType
PngColorType
Jenis warna tersebut.
Examples
Contoh ini menunjukkan cara memuat gambar PNG dari gambar BMP dengan jenis warna yang ditentukan.
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)
Mencipta contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage dengan memulaiConstructor ini memungkinkan pengembang untuk mengisi gambar PNG secara langsungdari satu aliran, memberikan fleksibilitas dalam pengambilan gambar dari berbagai sumber.
public PngImage(Stream stream)
Parameters
stream
Stream
Aliran untuk mengisi gambar.
Examples
Contoh ini menunjukkan cara memuat gambar PNG dari file atau arus file.
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)
Instantikan contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage, dengan spesifikasiukuran, ketinggian, dan jenis warna yang diinginkan. konstruktor ini memungkinkandengan cepat membuat gambar PNG dengan dimensi dan konfigurasi warna yang disesuaikan,memfasilitasi pengeluaran gambar yang lancar untuk berbagai aplikasi dan aliran kerja.
public PngImage(int width, int height, PngColorType colorType)
Parameters
width
int
dengan luasnya.
height
int
ketinggian yang
colorType
PngColorType
Jenis warna tersebut.
Examples
Contoh ini menunjukkan bagaimana untuk membuat gambar PNG dari ukuran yang ditentukan dengan jenis warna yang ditentukan, mengisi dengan warna yang solid dan menyimpannya ke file.
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, int)
Memulai contoh baru dari kelas Aspose.Imaging.FileFormats.Png.PngImage, menggabungkanPilihan PNG di samping parameter lebar dan ketinggian. konstruktor ini memungkinkanpengembang untuk membuat gambar PNG dengan pengaturan dan dimensi yang dapat disesuaikan,memberikan fleksibilitas dalam pembuatan gambar untuk berbagai kasus penggunaan.
public PngImage(PngOptions pngOptions, int width, int height)
Parameters
pngOptions
PngOptions
Pilihan PNG
width
int
dengan luasnya.
height
int
ketinggian yang
Examples
Contoh ini menunjukkan cara membuat gambar PNG dengan opsi yang ditentukan, mengisi dengan warna gradient linear dan menyimpannya ke file.
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
Mengalihkan warna latar belakang dari gambar, jika salah satunya ditentukan.berguna untuk aplikasi yang perlu mengidentifikasi dan berpotensi memanipulasiwarna latar belakang dari gambar.
public override Color BackgroundColor { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan warna yang sepenuhnya transparan untuk bagian dari gambar TrueColor PNG yang tidak mendukung saluran 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
Memulihkan nilai bit per piksel untuk gambar. sifat ini memberikan pentinginformasi tentang kedalaman warna gambar, memungkinkan pengembang untukMemahami tingkat detail dan ketepatan warna yang ada dalam data gambar.
public override int BitsPerPixel { get; }
Nilai Properti
FileFormat
Mengembalikan format file yang terkait dengan contoh gambar.memberikan informasi penting mengenai jenis file, yang memungkinkanPemrosesan dan pemrosesan yang efisien berdasarkan persyaratan format tertentu.
public override FileFormat FileFormat { get; }
Nilai Properti
HasAlpha
Mengembalikan nilai boolean yang menunjukkan apakah gambar memiliki saluran alfa,yang menentukan transparansi. properti ini berguna untuk aplikasiyang perlu menangani transparansi, memungkinkan pengembang untuk menentukan apakahPemprosesan tambahan diperlukan untuk menangani area transparan dalam gambar.
public override bool HasAlpha { get; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana untuk memeriksa apakah gambar PNG mendukung saluran 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
Mengembalikan nilai boolean yang menunjukkan apakah gambar memiliki warna latar belakang.Properti ini berguna untuk aplikasi yang perlu menentukan apakah gambartermasuk warna latar belakang, yang dapat penting untuk berbagai pemrosesantugas-tugas seperti komposisi, rendering, atau ekspor.
public override bool HasBackgroundColor { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan warna yang sepenuhnya transparan untuk bagian dari gambar TrueColor PNG yang tidak mendukung saluran 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
Menyediakan nilai boolean yang menunjukkan apakah gambar itu berisi transparanProperti ini sangat penting untuk aplikasi yang perlu dikendalikan.transparansi, memungkinkan pengembang untuk menentukan apakah pemrosesan tambahan adalahdiperlukan untuk menangani wilayah transparan dalam gambar.
public override bool HasTransparentColor { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan warna yang sepenuhnya transparan untuk bagian dari gambar TrueColor PNG yang tidak mendukung saluran 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
Mendapatkan ketinggian gambar. sifat ini mengembalikan dimensi vertikal darigambar, memungkinkan pengembang untuk menentukan ukuran dalam piksel di sepanjangAsas yang vertikal
public override int Height { get; }
Nilai Properti
HorizontalResolution
Mengembalikan atau mengubah resolusi horizontal gambar. sifat inimenampilkan jumlah piksel per inci di sepanjang sumbu horizontalPenyesuaian resolusi ini dapat mempengaruhi ukuran fisik gambar ketikadicetak atau ditampilkan.
public override double HorizontalResolution { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan resolusi horizontal/vertikal dari gambar 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
Mengembalikan nilai boolean yang menunjukkan apakah Aspose.Imaging.FileFormats.Png.PngImage adalahinterlaced, yang menentukan apakah data gambar disimpan dalamcara untuk pengisian atau transmisi yang lebih cepat.
public bool Interlaced { get; }
Nilai Properti
IsInterlaced
Mengembalikan nilai boolean yang menunjukkan apakah instans gambar terhubung.Properti sangat penting untuk mengoptimalkan strategi pengisian dan memastikan efisiensikinerja selama proses pemrosesan gambar atau tugas paparan.
public bool IsInterlaced { get; }
Nilai Properti
RawDataFormat
Mengakses format data mentah dari gambar. properti ini memberikan wawasan tentangbagaimana data gambar terstruktur secara internal, yang dapat berguna untukTugas pemrosesan gambar atau konversi format.
public override PixelDataFormat RawDataFormat { get; }
Nilai Properti
Examples
Contoh berikut memuat gambar PNG dan mencetak informasi tentang format data mentah dan saluran 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
Mengembalikan warna transparan dari gambar, jika ada.Nilai untuk aplikasi yang membutuhkan pengelolaan yang akurat dari area transparandalam gambar, memungkinkan pengembang untuk mengakses dan memanipulasi spesifikwarna transparan yang digunakan.
public override Color TransparentColor { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan warna yang sepenuhnya transparan untuk bagian dari gambar TrueColor PNG yang tidak mendukung saluran 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
Menyediakan akses ke resolusi vertikal gambar. pengembang dapat menggunakanuntuk memperoleh atau mengubah pengaturan resolusi, yang menunjukkan bahwaJumlah piksel per inci (PPI) di sepanjang sumbu vertikal gambar.
public override double VerticalResolution { get; set; }
Nilai Properti
Examples
Contoh berikut menunjukkan bagaimana menetapkan resolusi horizontal/vertikal dari gambar 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
Memungkinkan penarikan lebar gambar, memberikan informasi pentingtentang dimensi-nya. properti ini sering digunakan oleh pengembang untukmenentukan lebar gambar, memungkinkan mereka untuk melakukan berbagai operasi berdasarkanPada ukurannya
public override int Width { get; }
Nilai Properti
XmpData
Mengakses atau mengubah Metadata Platform Extensible (XMP) yang terkaitProperti ini memfasilitasi ekstraksi, modifikasi, ataupenambahan metadata, memungkinkan pengelolaan menyeluruh informasi yang berkaitan dengan gambar.
public override XmpPacketWrapper XmpData { get; set; }
Nilai Properti
Methods
GetDefaultOptions(objek[])
Dapatkan opsi default.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[ ]
dengan argumen tersebut.
Returns
Pilihan default
GetModifyDate(Bool)
Retreates timestamp yang menunjukkan modifikasi terkini sumber dayaMetode ini memberikan akses ke metadata vital, memungkinkan aplikasi untukmengidentifikasi saat gambar terakhir diubah, memfasilitasi pengesanan versi danManajemen konten.
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
Jika ditentukan untuk ‘kebenaran’, gunakan informasi dari FileInfo sebagai nilai default.
Returns
Tanggal dan waktu gambar sumber yang terakhir diubah.
GetOriginalOptions()
Dapatkan opsi berdasarkan pengaturan file asli.Ini dapat membantu untuk menjaga kedalaman bit dan parameter lain dari gambar asli tidak berubah.Misalnya, jika kita memuat gambar PNG hitam dan putih dengan 1 bit per piksel dan kemudian menyimpannya menggunakanMetode Aspose.Imaging.DataStreamSupporter.Save(System.String), hasil PNG gambar dengan 8-bit per piksel akan diproduksi.Untuk menghindari dan menyimpan gambar PNG dengan 1 bit per piksel, gunakan metode ini untuk mendapatkan opsi penyimpanan yang sesuai dan melewati merekauntuk Aspose.Imaging.Image.Save(System.String,Aspose.Imaging.ImageOptionsBase) metode sebagai parameter kedua.
public override ImageOptionsBase GetOriginalOptions()
Returns
Pilihan berdasarkan pengaturan file asli.
OnPaletteChanged(Perbedaannya dengan IColorPalette)
Tanggapan ketika palet diubah.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
dengan palet lama.
newPalette
IColorPalette
dan palet baru.
SaveData(Stream)
untuk menyimpan data.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
dan aliran tersebut.
UpdateDimensions(dengan int, int)
Dimensi update yang ada.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
dengan lebar yang baru.
newHeight
int
ketinggian yang baru.
UpdateMetadata()
Update gambar tanggal dan waktu modifikasi terakhir.
protected override void UpdateMetadata()