Class RasterImage
İsim alanı : Aspose.Imaging Toplantı: Aspose.Imaging.dll (25.4.0)
Raster grafik işlemlerini destekleyen bir raster görüntüsü temsil eder.
public abstract class RasterImage : Image, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage
Derived
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata
mirasçı üyeleri
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
Bu örnek, bir Tip Renk aralığında Pixel bilgileri nasıl yükleneceğini gösterir, aralığı manipüle eder ve görüntüye geri koyar. Bu işlemleri gerçekleştirmek için, bu örnek yeni bir Görüntü dosyası (GIF biçiminde) uisng MemoryStream nesnesi oluşturur.
//Create an instance of MemoryStream
using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
{
//Create an instance of GifOptions and set its various properties including the Source property
Aspose.Imaging.ImageOptions.GifOptions gifOptions = new Aspose.Imaging.ImageOptions.GifOptions();
gifOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Create an instance of Image
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(gifOptions, 500, 500))
{
//Get the pixels of image by specifying the area as image boundary
Aspose.Imaging.Color[] pixels = image.LoadPixels(image.Bounds);
//Loop over the Array and sets color of alrenative indexed pixel
for (int index = 0; index < pixels.Length; index++)
{
if (index % 2 == 0)
{
//Set the indexed pixel color to yellow
pixels[index] = Aspose.Imaging.Color.Yellow;
}
else
{
//Set the indexed pixel color to blue
pixels[index] = Aspose.Imaging.Color.Blue;
}
}
//Apply the pixel changes to the image
image.SavePixels(image.Bounds, pixels);
// save all changes.
image.Save();
}
// Write MemoryStream to File
using (System.IO.FileStream fileStream = new System.IO.FileStream(@"C:\temp\output.gif", System.IO.FileMode.Create))
{
stream.WriteTo(fileStream);
}
}
Constructors
RasterImage()
Aspose.Imaging.RasterImage sınıfının yeni bir örneğini başlatır.
[JsonConstructor]
protected RasterImage()
RasterImage(İKOLORPALETİ)
Aspose.Imaging.RasterImage sınıfının yeni bir örneğini başlatır.
protected RasterImage(IColorPalette colorPalette)
Parameters
colorPalette
IColorPalette
Renk paleti var.
Fields
xmpData Hakkında
XMP Metadata Hakkında
[JsonProperty]
protected XmpPacketWrapper xmpData
alan değeri
Properties
DataLoader
Alın veya veri yükleyicisi ayarlayın.
[JsonProperty]
protected IRasterImageArgb32PixelLoader DataLoader { get; set; }
Mülkiyet Değer
HasAlpha
Bu durumun alfa olup olmadığını gösteren bir değer alır.
public virtual bool HasAlpha { get; }
Mülkiyet Değer
Examples
Aşağıdaki örnek, raster görüntüleri yükler ve hammadde veri biçimi ve alfa kanalı hakkında bilgi yazdırır.
// The image files to load.
string[] fileNames = new string[]
{
@"c:\temp\sample.bmp",
@"c:\temp\alpha.png",
};
foreach (string fileName in fileNames)
{
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(fileName))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
System.Console.WriteLine("ImageFile={0}, FileFormat={1}, HasAlpha={2}", fileName, rasterImage.RawDataFormat, rasterImage.HasAlpha);
}
}
// The output may look like this:
// ImageFile=c:\temp\sample.bmp, FileFormat=Rgb24Bpp, used channels: 8,8,8, HasAlpha=False
// ImageFile=c:\temp\alpha.png, FileFormat=RGBA32Bpp, used channels: 8,8,8,8, HasAlpha=True
Aşağıdaki örnek, bir BMP görüntüsünden hammadde veri biçimi ve alfa kanalı hakkında bilgi nasıl çıkarılacağını göstermektedir.
// Create a 32-bpp BMP image of 100 x 100 px.
using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 32, null))
{
System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
};
// Create a 24-bpp BMP image of 100 x 100 px.
using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 24, null))
{
System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
};
// Generally, BMP doesn't support alpha channel so the output will look like this:
// FileFormat = Bmp, RawDataFormat = Rgb32Bpp, used channels: 8,8,8,8, HasAlpha = False
// FileFormat = Bmp, RawDataFormat = Rgb24Bpp, used channels: 8,8,8, HasAlpha = False
HasTransparentColor
Görüntünün şeffaf renk olup olmadığını gösteren bir değer alır.
public virtual bool HasTransparentColor { get; set; }
Mülkiyet Değer
HorizontalResolution
Bu Aspose.Imaging.RasterImage’ın horizontal çözünürlüğünü, inç başına piksel olarak alır veya ayarlar.
public virtual double HorizontalResolution { get; set; }
Mülkiyet Değer
Examples
Aşağıdaki örnek, bir raster görüntüsünün yatay/vertikal çözünürlüğünü nasıl ayarlayacağınızı gösterir.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get horizontal and vertical resolution of the image
double horizontalResolution = rasterImage.HorizontalResolution;
double verticalResolution = rasterImage.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");
rasterImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", rasterImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", rasterImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
Remarks
Varsayılan olarak, bu değer her zaman 96’dır, çünkü farklı platformlar ekran çözünürlüğünü iade edemez.
ImageOpacity
Bu görüntüyle karşıtlık duyuyoruz.
public virtual float ImageOpacity { get; }
Mülkiyet Değer
IsRawDataAvailable
Kuru veri yükleme mevcut olup olmadığını gösteren bir değer alır.
public bool IsRawDataAvailable { get; }
Mülkiyet Değer
PremultiplyComponents
Görüntü bileşenlerinin çoğaltılması gerektiğini gösteren bir değer alır veya ayarlar.
public virtual bool PremultiplyComponents { get; set; }
Mülkiyet Değer
Examples
Aşağıdaki örnek yeni bir raster görüntüsü oluşturur, belirtilen yarı şeffaf pikselleri kaydeder, sonra bu pikselleri yükler ve önceden çoğaltılmış formda nihai renkler alır.
int imageWidth = 3;
int imageHeight = 2;
Aspose.Imaging.Color[] colors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.FromArgb(127, 255, 0, 0),
Aspose.Imaging.Color.FromArgb(127, 0, 255, 0),
Aspose.Imaging.Color.FromArgb(127, 0, 0, 255),
Aspose.Imaging.Color.FromArgb(127, 255, 255, 0),
Aspose.Imaging.Color.FromArgb(127, 255, 0, 255),
Aspose.Imaging.Color.FromArgb(127, 0, 255, 255),
};
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.TruecolorWithAlpha;
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(createOptions, imageWidth, imageHeight))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Save pixels for the whole image.
rasterImage.SavePixels(rasterImage.Bounds, colors);
// The pixels are stored in the original image in the non-premultiplied form.
// Need to specify the corresponding option explicitly to obtain premultiplied color components.
// The premultiplied color components are calculated by the formulas:
// red = original_red * alpha / 255;
// green = original_green * alpha / 255;
// blue = original_blue * alpha / 255;
rasterImage.PremultiplyComponents = true;
Aspose.Imaging.Color[] premultipliedColors = rasterImage.LoadPixels(rasterImage.Bounds);
for (int i = 0; i < colors.Length; i++)
{
System.Console.WriteLine("Original color: {0}", colors[i].ToString());
System.Console.WriteLine("Premultiplied color: {0}", premultipliedColors[i].ToString());
}
}
RawCustomColorConverter
Renk dönüştürücüsünü alır veya ayarlar
public IColorConverter RawCustomColorConverter { get; set; }
Mülkiyet Değer
RawDataFormat
Kuru veri formatı alınır.
public virtual PixelDataFormat RawDataFormat { get; }
Mülkiyet Değer
Examples
Aşağıdaki örnek, raster görüntüleri yükler ve hammadde veri biçimi ve alfa kanalı hakkında bilgi yazdırır.
// The image files to load.
string[] fileNames = new string[]
{
@"c:\temp\sample.bmp",
@"c:\temp\alpha.png",
};
foreach (string fileName in fileNames)
{
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(fileName))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
System.Console.WriteLine("ImageFile={0}, FileFormat={1}, HasAlpha={2}", fileName, rasterImage.RawDataFormat, rasterImage.HasAlpha);
}
}
// The output may look like this:
// ImageFile=c:\temp\sample.bmp, FileFormat=Rgb24Bpp, used channels: 8,8,8, HasAlpha=False
// ImageFile=c:\temp\alpha.png, FileFormat=RGBA32Bpp, used channels: 8,8,8,8, HasAlpha=True
Bu örnek, bir dosya akışından bir DJVU görüntüsünü nasıl yükleyeceğinizi ve sayfalar hakkında bilgi nasıl yazdırılacağını gösterir.
string dir = "c:\\temp\\";
// Load a DJVU image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.djvu"))
{
using (Aspose.Imaging.FileFormats.Djvu.DjvuImage djvuImage = new Aspose.Imaging.FileFormats.Djvu.DjvuImage(stream))
{
System.Console.WriteLine("The total number of pages: {0}", djvuImage.Pages.Length);
System.Console.WriteLine("The active page number: {0}", djvuImage.ActivePage.PageNumber);
System.Console.WriteLine("The first page number: {0}", djvuImage.FirstPage.PageNumber);
System.Console.WriteLine("The last page number: {0}", djvuImage.LastPage.PageNumber);
foreach (Aspose.Imaging.FileFormats.Djvu.DjvuPage djvuPage in djvuImage.Pages)
{
System.Console.WriteLine("--------------------------------------------------");
System.Console.WriteLine("Page number: {0}", djvuPage.PageNumber);
System.Console.WriteLine("Page size: {0}", djvuPage.Size);
System.Console.WriteLine("Page raw format: {0}", djvuPage.RawDataFormat);
}
}
}
//The output may look like this:
//The total number of pages: 2
//The active page number: 1
//The first page number: 1
//The last page number: 2
//--------------------------------------------------
//Page number: 1
//Page size: { Width = 2481, Height = 3508}
//Page raw format: RgbIndexed1Bpp, used channels: 1
//--------------------------------------------------
//Page number: 2
//Page size: { Width = 2481, Height = 3508}
//Page raw format: RgbIndexed1Bpp, used channels: 1
RawDataSettings
Bu ayarları kullanırken, veri dönüşüm olmadan yüklenir.
[JsonIgnore]
public RawDataSettings RawDataSettings { get; }
Mülkiyet Değer
RawFallbackIndex
Palet indeksi sınırları dışında olduğunda kullanmak için düşüş indeksi alır veya ayarlar.
public int RawFallbackIndex { get; set; }
Mülkiyet Değer
RawIndexedColorConverter
indekslenmiş renk dönüştürücüsünü alır veya ayarlar
public IIndexedColorConverter RawIndexedColorConverter { get; set; }
Mülkiyet Değer
RawLineSize
Çelik çizgi boyutunu byte olarak alır.
public virtual int RawLineSize { get; }
Mülkiyet Değer
TransparentColor
Görüntüye şeffaf renk verir.
public virtual Color TransparentColor { get; set; }
Mülkiyet Değer
UpdateXmpData
XMP metadata güncelleme olup olmadığını gösteren bir değer alır veya ayarlar.
public virtual bool UpdateXmpData { get; set; }
Mülkiyet Değer
UsePalette
Görüntü paleti kullanıldığını gösteren bir değer alır.
public override bool UsePalette { get; }
Mülkiyet Değer
UseRawData
Kuru veri yükleme kullanılabilir olduğunda kullanılması gerektiğini gösteren bir değer alır veya ayarlar.
public virtual bool UseRawData { get; set; }
Mülkiyet Değer
VerticalResolution
Bu Aspose.Imaging.RasterImage’ın vertikal çözünürlüğünü, inç başına piksel olarak alır veya ayarlar.
public virtual double VerticalResolution { get; set; }
Mülkiyet Değer
Examples
Aşağıdaki örnek, bir raster görüntüsünün yatay/vertikal çözünürlüğünü nasıl ayarlayacağınızı gösterir.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get horizontal and vertical resolution of the image
double horizontalResolution = rasterImage.HorizontalResolution;
double verticalResolution = rasterImage.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");
rasterImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", rasterImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", rasterImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
Remarks
Varsayılan olarak, bu değer her zaman 96’dır, çünkü farklı platformlar ekran çözünürlüğünü iade edemez.
XmpData
XMP metadata alır veya ayarlar.
public virtual XmpPacketWrapper XmpData { get; set; }
Mülkiyet Değer
Methods
AdjustBrightness(int ile)
Görüntü için bir parlaklık ayarlayın.
public virtual void AdjustBrightness(int brightness)
Parameters
brightness
int
Işık değeri.
Examples
Aşağıdaki örnek bir görüntü parlaklık düzeltme yapar.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Set the brightness value. The accepted values of brightness are in the range [-255, 255].
rasterImage.AdjustBrightness(50);
rasterImage.Save(dir + "sample.AdjustBrightness.png");
}
AdjustContrast(Floransa)
Görüntü Karşıtlığı
public virtual void AdjustContrast(float contrast)
Parameters
contrast
float
Kontrast değeri ( aralığında [-100; 100])
Examples
Aşağıdaki örnek bir görüntüye kontrast düzeltme yapar.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Set the contrast value. The accepted values of contrast are in the range [-100f, 100f].
rasterImage.AdjustContrast(50);
rasterImage.Save(dir + "sample.AdjustContrast.png");
}
AdjustGamma(Yüzme, Yüzme ve Yüzme)
Gamma düzeltme bir görüntü.
public virtual void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Kırmızı Kanal Koşiförü için Gamma
gammaGreen
float
Gamma yeşil kanal koşulları
gammaBlue
float
Mavi Kanal Koefficient için Gamma
Examples
Aşağıdaki örnek, renk bileşenleri için farklı koşulları uygulayan bir görüntü gamma düzeltmesini gerçekleştirir.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Set individual gamma coefficients for red, green and blue channels.
rasterImage.AdjustGamma(1.5f, 2.5f, 3.5f);
rasterImage.Save(dir + "sample.AdjustGamma.png");
}
AdjustGamma(Floransa)
Gamma düzeltme bir görüntü.
public virtual void AdjustGamma(float gamma)
Parameters
gamma
float
Kırmızı, yeşil ve mavi kanallar için Gamma
Examples
Aşağıdaki örnek bir görüntü için gamma düzeltme yapar.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Set gamma coefficient for red, green and blue channels.
rasterImage.AdjustGamma(2.5f);
rasterImage.Save(dir + "sample.AdjustGamma.png");
}
BinarizeBradley(Çift)
Bradley’in adaptif sınırlama algoritmasını kullanarak bir görüntüyi ikili hale getirmek
public virtual void BinarizeBradley(double brightnessDifference)
Parameters
brightnessDifference
double
Piksel arasındaki parlaklık farkı ve bu piksel etrafında yoğunlaşan bir x s penceresinin ortalaması.
BinarizeBradley(Çifte , int)
Bradley’in adaptif sınırlama algoritmasını kullanarak bir görüntüyi ikili hale getirmek
public virtual void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
Piksel arasındaki parlaklık farkı ve bu piksel etrafında yoğunlaşan bir x s penceresinin ortalaması.
windowSize
int
Bu piksel etrafında yoğunlaşan piksel penceresinin boyutu s x s
Examples
Aşağıdaki örnek, Bradley’in adaptif çerçeve algoritması ile bir raster görüntüsünü belirlenen pencere boyutuna binerleştirir.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Binarize the image with a brightness difference of 5. The brightness is a difference between a pixel and the average of an 10 x 10 window of pixels centered around this pixel.
rasterImage.BinarizeBradley(5, 10);
rasterImage.Save(dir + "sample.BinarizeBradley5_10x10.png");
}
BinarizeFixed(byte)
Önceden tanımlanmış bir çerçeveye sahip bir görüntü binarizasyonu
public virtual void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Eğer bir pikselin eşdeğer gri değeri sınırın üzerinde ise, ona 255 değer verilir, 0 aksi takdirde.
Examples
Aşağıdaki örnek, önceden tanımlanmış sınır ile bir raster görüntüsünü ikili hale getirir. ikili görüntüler sadece 2 renk içerir - siyah ve beyaz.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Binarize the image with a threshold value of 127.
// If a corresponding gray value of a pixel is greater than 127, a value of 255 will be assigned to it, 0 otherwise.
rasterImage.BinarizeFixed(127);
rasterImage.Save(dir + "sample.BinarizeFixed.png");
}
BinarizeOtsu()
Otsu çerçeve ile bir görüntü binarizasyonu
public virtual void BinarizeOtsu()
Examples
Aşağıdaki örnek, Otsu çerçevesi ile bir raster görüntüsünü ikili hale getirir. ikili görüntüler sadece 2 renk içerir - siyah ve beyaz.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Binarize the image with Otsu thresholding.
rasterImage.BinarizeOtsu();
rasterImage.Save(dir + "sample.BinarizeOtsu.png");
}
Blend(Konu, RasterImage, Rectangle, Byte)
Bu görüntü örneğini overlay’ görüntüyle karıştırın.
public virtual void Blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha = 255)
Parameters
origin
Point
Arka plan görüntü karışık köken.
overlay
RasterImage
Yüzey Görüntüsü .
overlayArea
Rectangle
Yüzey alanı .
overlayAlpha
byte
Yüzey alfa.
Blend(Konu, RasterImage, byte)
Bu görüntü örneğini overlay’ görüntüyle karıştırın.
public void Blend(Point origin, RasterImage overlay, byte overlayAlpha = 255)
Parameters
origin
Point
Arka plan görüntü karışık köken.
overlay
RasterImage
Yüzey Görüntüsü .
overlayAlpha
byte
Yüzey alfa.
Dither(Yönlendirme Yöntemleri, int)
Şimdiki görüntüye dayalı performanslar.
public void Dither(DitheringMethod ditheringMethod, int bitsCount)
Parameters
ditheringMethod
DitheringMethod
Dithering yöntemini kullanır.
bitsCount
int
Son bitler Dithering için sayılır.
Examples
Aşağıdaki örnek, bir raster görüntüsünü yükler ve farklı palet derinliği kullanılarak sınır ve sıvı dithering yapar.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Perform threshold dithering using 4-bit color palette which contains 16 colors.
// The more bits specified the higher quality and the bigger size of the output image.
// Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
rasterImage.Dither(Aspose.Imaging.DitheringMethod.ThresholdDithering, 4);
rasterImage.Save(dir + "sample.ThresholdDithering4.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Perform floyd dithering using 1-bit color palette which contains only 2 colors - black and white.
// The more bits specified the higher quality and the bigger size of the output image.
// Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
rasterImage.Dither(Aspose.Imaging.DitheringMethod.FloydSteinbergDithering, 1);
rasterImage.Save(dir + "sample.FloydSteinbergDithering1.png");
}
Dither(DitheringMethod, int, IColorPalette)
Şimdiki görüntüye dayalı performanslar.
public abstract void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
Dithering yöntemini kullanır.
bitsCount
int
Son bitler Dithering için sayılır.
customPalette
IColorPalette
Dithering için geleneksel palet.
Filter(Rectangle, FilterOptionsBase)
Belirlenen düz açıyı filtre eder.
public virtual void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
Doğrudan bir şekilde.
options
FilterOptionsBase
Seçenekler için.
Examples
Aşağıdaki örnek, bir raster görüntüsüne çeşitli filtrelere uygulanır.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a median filter with a rectangle size of 5 to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MedianFilterOptions(5));
rasterImage.Save(dir + "sample.MedianFilter.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a bilateral smoothing filter with a kernel size of 5 to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.BilateralSmoothingFilterOptions(5));
rasterImage.Save(dir + "sample.BilateralSmoothingFilter.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a Gaussian blur filter with a radius of 5 and a sigma value of 4.0 to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussianBlurFilterOptions(5, 4.0));
rasterImage.Save(dir + "sample.GaussianBlurFilter.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a Gauss-Wiener filter with a radius of 5 and a smooth value of 4.0 to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussWienerFilterOptions(5, 4.0));
rasterImage.Save(dir + "sample.GaussWienerFilter.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a motion wiener filter with a length of 5, a smooth value of 4.0 and an angle of 90.0 degrees to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MotionWienerFilterOptions(10, 1.0, 90.0));
rasterImage.Save(dir + "sample.MotionWienerFilter.png");
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Apply a sharpen filter with a kernel size of 5 and a sigma value of 4.0 to the entire image.
rasterImage.Filter(rasterImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.SharpenFilterOptions(5, 4.0));
rasterImage.Save(dir + "sample.SharpenFilter.png");
}
GetArgb32Pixel(int , int , int)
Bir görüntü 32 bit ARGB piksel alır.
public int GetArgb32Pixel(int x, int y)
Parameters
x
int
Pixel x yerini kullanır.
y
int
Piksel ve konumu.
Returns
Belirlenen konum için 32 bit ARGB piksel.
Examples
Aşağıdaki örnek bir raster görüntüsünü yükler ve 32 bit bütün değeri olarak temsil edilen bir piksel rengi alır.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get an integer representation of the color of the top-left pixel of the image.
int color = rasterImage.GetArgb32Pixel(0, 0);
// To obtain the values of the individual color components, shift the color value by a corresponding number of bits
int alpha = (color >> 24) & 0xff;
int red = (color >> 16) & 0xff;
int green = (color >> 8) & 0xff;
int blue = (color >> 0) & 0xff;
System.Console.WriteLine("The color of the pixel(0,0) is A={0},R={1},G={2},B={3}", alpha, red, green, blue);
}
Aşağıdaki örnek görüntü caching performansını nasıl etkilediğini gösterir. genel olarak, cache verileri okumak cache olmayan verileri okumaktan daha hızlı yapılır.
string dir = "c:\\temp\\";
// Load an image from a PNG file.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
// Cache all pixel data so that no additional data loading will be performed from the underlying data stream
image.CacheData();
System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
// Reading all pixels is pretty fast.
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
for (int y = 0; y < image.Height; y++)
{
for (int x = 0; x < image.Width; x++)
{
int color = rasterImage.GetArgb32Pixel(x, y);
}
}
stopwatch.Stop();
System.Console.WriteLine("Reading all cached pixels took {0} ms.", stopwatch.ElapsedMilliseconds);
}
// Load an image from a PNG file
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
// Reading all pixels is not as fast as when caching
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
for (int y = 0; y < image.Height; y++)
{
for (int x = 0; x < image.Width; x++)
{
int color = rasterImage.GetArgb32Pixel(x, y);
}
}
stopwatch.Stop();
System.Console.WriteLine("Reading all pixels without preliminary caching took {0} ms.", stopwatch.ElapsedMilliseconds);
}
// The output may look like this:
// Reading all cached pixels took 1500 ms.
// Reading all pixels without preliminary caching took 150000 ms.
GetDefaultArgb32Pixels(Rectangle)
32 bit ARGB piksel aralığını alır.
public int[] GetDefaultArgb32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel almak için düz açı.
Returns
int […]
Default pixels array yapılır.
GetDefaultPixels(Rectangle ve IPartialArgb32PixelLoader)
Varsayılan pikseller kısmi piksel yükleyicisi kullanılarak sıralanır.
public void GetDefaultPixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
Piksel almak için düz açı.
partialPixelLoader
IPartialArgb32PixelLoader
Paralel piksel yükleyicisi.
GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings)
Varsayılan hammadde veri aralığını kısmi piksel yükleyicisi kullanılarak alır.
public void GetDefaultRawData(Rectangle rectangle, IPartialRawDataLoader partialRawDataLoader, RawDataSettings rawDataSettings)
Parameters
rectangle
Rectangle
Piksel almak için düz açı.
partialRawDataLoader
IPartialRawDataLoader
kısmi veri yükleyicisi.
rawDataSettings
RawDataSettings
Temel veri ayarları.
GetDefaultRawData(Rectangle ve RawDataSettings)
Varsayılan hammadde veri aralığını alır.
public byte[] GetDefaultRawData(Rectangle rectangle, RawDataSettings rawDataSettings)
Parameters
rectangle
Rectangle
Temel verileri elde etmek için düz açı.
rawDataSettings
RawDataSettings
Temel veri ayarları.
Returns
byte […]
İndirimli maddi veri array.
GetModifyDate(bool)
Kaynak görüntüsünün en son değiştirildiği tarih ve saat alınır.
public virtual DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
Eğer ‘gerçek’ olarak ayarlanırsa, FileInfo’dan gelen bilgileri varsayılan değer olarak kullanır.
Returns
Tarih ve zaman kaynak görüntüsü son değiştirildi.
GetPixel(int , int , int)
Bir resim piksel alır.
public Color GetPixel(int x, int y)
Parameters
x
int
Pixel x yerini kullanır.
y
int
Piksel ve konumu.
Returns
Piksel renk belirlenmiş konum için.
Examples
Aşağıdaki örnek bir raster görüntüsünü yükler ve bir piksel rengi alır.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get the color of the top-left pixel of the image.
Color color = rasterImage.GetPixel(0, 0);
// Obtain the values of the individual color components
byte alpha = color.A;
byte red = color.R;
int green = color.G;
int blue = color.B;
System.Console.WriteLine("The color of the pixel(0,0) is A={0},R={1},G={2},B={3}", alpha, red, green, blue);
}
GetSkewAngle()
Kayak köşesini alır.Bu yöntem, tarama sırasında kaydırma açıını belirlemek için taran metin belgelerine uygulanır.
public float GetSkewAngle()
Returns
Sıcaklık açısı, derecelerde
Grayscale()
Bir görüntüyi gri ölçekli temsiline dönüştürmek
public virtual void Grayscale()
Examples
Aşağıdaki örnek, renkli bir raster görüntüsünü gri ölçekli görüntüsüne dönüştürür. gri ölçekli görüntüler yalnızca gri gölgelerden oluşur ve yalnızca yoğunluk bilgileri taşır.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
rasterImage.Grayscale();
rasterImage.Save(dir + "sample.Grayscale.png");
}
LoadArgb32Pixels(Rectangle)
32 bit ARGB piksel yükleme.
public int[] LoadArgb32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel yüklemek için düz açıdan.
Returns
int […]
32 bit ARGB piksel array.
Examples
Aşağıdaki örnek, bir raster görüntüsünün piksellerini nasıl yükleyeceğinizi ve işleyeceğinizi gösterir. pikseller 32 bit bütün değerler olarak temsil edilir. Örneğin, bir görüntünün tamamen şeffaf piksel sayma sorunu göz önünde bulundurun.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\alpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Load pixels for the whole image. Any rectangular part of the image can be specified as a parameter of the Aspose.Imaging.RasterImage.LoadArgb32Pixels method.
int[] pixels = rasterImage.LoadArgb32Pixels(rasterImage.Bounds);
int count = 0;
foreach (int pixel in pixels)
{
int alpha = (pixel >> 24) & 0xff;
if (alpha == 0)
{
count++;
}
}
System.Console.WriteLine("The number of fully transparent pixels is {0}", count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
LoadArgb64Pixels(Rectangle)
64 bit ARGB piksel yükleme.
public long[] LoadArgb64Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel yüklemek için düz açıdan.
Returns
long […]
64 bit ARGB piksel array.
Examples
Aşağıdaki örnek, bir raster görüntüsünün piksellerini nasıl yükleyeceğinizi ve işleyeceğinizi gösterir. pikseller 64 bit bütün değerler olarak temsil edilir. Örneğin, bir görüntünün tamamen şeffaf piksel sayma sorunu göz önünde bulundurun.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\16rgba.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Load pixels for the whole image. Any rectangular part of the image can be specified as a parameter of the Aspose.Imaging.RasterImage.LoadArgb64Pixels method.
// Note that the image itself must have 16 bits per sample, because Aspose.Imaging.RasterImage.LoadArgb64Pixels doesn't work with 8 bit per sample.
// In order to work with 8 bits per sample please use the good old Aspose.Imaging.RasterImage.LoadArgb32Pixels method.
long[] pixels = rasterImage.LoadArgb64Pixels(rasterImage.Bounds);
int count = 0;
foreach (int pixel in pixels)
{
// Note that all color components including alpha are represented by 16-bit values, so their allowed values are in the range [0, 63535].
int alpha = (pixel >> 48) & 0xffff;
if (alpha == 0)
{
count++;
}
}
System.Console.WriteLine("The number of fully transparent pixels is {0}", count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
LoadCmyk32Pixels(Rectangle)
Pikseller CMYK biçiminde yüklenir.
public int[] LoadCmyk32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel yüklemek için düz açıdan.
Returns
int […]
Yüklenen CMYK pikselleri 32 bit inateger değerleri olarak mevcuttur.
LoadCmykPixels(Rectangle)
Pikseller CMYK biçiminde yüklenir.Lütfen daha etkili Aspose.Imaging.RasterImage.LoadCmyk32Pixels(Aspose.Imaging.Rectangle) yöntemi kullanın.
[Obsolete("Method is obsolete")]
public CmykColor[] LoadCmykPixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel yüklemek için düz açıdan.
Returns
CmykColor […]
Yüklü CMYK piksel array.
LoadPartialArgb32Pixels(Rectangle ve IPartialArgb32PixelLoader)
32 bit ARGB pikselleri kısmen paketlerle yüklenir.
public void LoadPartialArgb32Pixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
İstediğiniz düzlem.
partialPixelLoader
IPartialArgb32PixelLoader
32 bit ARGB piksel şarj cihazı
Examples
Örneğin, bir görüntü tamamen şeffaf piksel sayma sorunu göz önünde bulundurun. şeffaf piksel saymak için kısmi yükleme mekanizması kullanarak, ayrı bir sınıf TransparentArgb32PixelCounter Aspose.Imaging.IPartialArgb32PixelLoader uygulanır.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\alpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Create an instance of the Aspose.Imaging.IPartialArgb32PixelLoader and pass it to the Aspose.Imaging.RasterImage.LoadPartialArgb32Pixels
TransparentArgb32PixelCounter counter = new TransparentArgb32PixelCounter();
// Load pixels for the whole image. Any rectangular part of the image can be specified as the first parameter of the Aspose.Imaging.RasterImage.LoadPartialArgb32Pixels method.
rasterImage.LoadPartialArgb32Pixels(rasterImage.Bounds, counter);
System.Console.WriteLine("The number of fully transparent pixels is {0}", counter.Count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
// The counter may look like this:
/// <summary>
/// Counts the number of fully transparent pixels with alpha channel value of 0.
/// </summary>
private class TransparentArgb32PixelCounter : IPartialArgb32PixelLoader
{
/// <summary>
/// The number of fully transparent pixels.
/// </summary>
private int count;
/// <summary>
/// Gets the number of fully transparent pixels.
/// </summary>
public int Count
{
get { return this.count; }
}
/// <summary>
/// Processes the loaded pixels. This method is called back every time when a new portion of pixels is loaded.
/// </summary>
/// <param name="pixelsRectangle"/>The pixels rectangle.
/// <param name="pixels"/>The 32-bit ARGB pixels.
/// <param name="start"/>The start pixels point.
/// <param name="end"/>The end pixels point.
public void Process(Aspose.Imaging.Rectangle pixelsRectangle, int[] pixels, Aspose.Imaging.Point start, Aspose.Imaging.Point end)
{
foreach (int pixel in pixels)
{
int alpha = (pixel >> 24) & 0xff;
if (alpha == 0)
{
this.count++;
}
}
}
}
LoadPartialArgb64Pixels(Rectangle ve IPartialArgb64PixelLoader)
64 bit ARGB piksel kısmen paketlerle yüklenir.
public void LoadPartialArgb64Pixels(Rectangle rectangle, IPartialArgb64PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
İstediğiniz düzlem.
partialPixelLoader
IPartialArgb64PixelLoader
64 bit ARGB piksel şarj cihazı
LoadPartialPixels(Rectangle ve IPartialPixelLoader)
Pikseller kısmen paketlerle yüklenir.
public void LoadPartialPixels(Rectangle desiredRectangle, IPartialPixelLoader pixelLoader)
Parameters
desiredRectangle
Rectangle
İstediğiniz düzlem.
pixelLoader
IPartialPixelLoader
Pixel şarj cihazı
Examples
Aşağıdaki örnek, bir raster görüntüsünün piksellerini kendi kısmi işlemci kullanılarak nasıl yüklediğinizi ve işlediğinizi gösterir. Örneğin, bir görüntünün tamamen şeffaf piksellerini sayma sorunu düşünün. kısmi yükleme mekanizması kullanılarak şeffaf saymak için, Aspose.Imaging.IPartialPixelLoader’ı uygulayan ayrı bir TransparentPixelCounter sınıfı tanıtılır.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\alpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Create an instance of the Aspose.Imaging.IPartialPixelLoader and pass it to the Aspose.Imaging.RasterImage.LoadPartialPixels
TransparentPixelCounter counter = new TransparentPixelCounter();
// Load pixels for the whole image. Any rectangular part of the image can be specified as the first parameter of the Aspose.Imaging.RasterImage.LoadPartialPixels method.
rasterImage.LoadPartialPixels(rasterImage.Bounds, counter);
System.Console.WriteLine("The number of fully transparent pixels is {0}", counter.Count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
// The counter may look like this:
/// <summary>
/// Counts the number of fully transparent pixels with alpha channel value of 0.
/// </summary>
private class TransparentPixelCounter : IPartialPixelLoader
{
/// <summary>
/// The number of fully transparent pixels.
/// </summary>
private int count;
/// <summary>
/// Gets the number of fully transparent pixels.
/// </summary>
public int Count
{
get { return this.count; }
}
/// <summary>
/// Processes the loaded pixels. This method is called back every time when a new portion of pixels is loaded.
/// </summary>
/// <param name="pixelsRectangle"/>The pixels rectangle.
/// <param name="pixels"/>The 32-bit ARGB pixels.
/// <param name="start"/>The start pixels point.
/// <param name="end"/>The end pixels point.
public void Process(Aspose.Imaging.Rectangle pixelsRectangle, Aspose.Imaging.Color[] pixels, Aspose.Imaging.Point start, Aspose.Imaging.Point end)
{
foreach (Color pixel in pixels)
{
if (pixel.A == 0)
{
this.count++;
}
}
}
}
LoadPixels(Rectangle)
Pixel yüklemesi.
public Color[] LoadPixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Piksel yüklemek için düz açıdan.
Returns
Color […]
Yüklü piksel array.
Examples
Aşağıdaki örnek, bir raster görüntüsünün piksellerini nasıl yükleyeceğinizi ve işleyeceğinizi gösterir. örneğin, bir görüntünün tamamen şeffaf piksellerini sayma sorunu göz önünde bulundurun.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\alpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Load pixels for the whole image. Any rectangular part of the image can be specified as a parameter of the Aspose.Imaging.RasterImage.LoadPixels method.
Color[] pixels = rasterImage.LoadPixels(rasterImage.Bounds);
int count = 0;
foreach (Color pixel in pixels)
{
if (pixel.A == 0)
{
count++;
}
}
System.Console.WriteLine("The number of fully transparent pixels is {0}", count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
Bu örnek, bir Tip Renk aralığında Pixel bilgileri nasıl yükleneceğini gösterir, aralığı manipüle eder ve görüntüye geri koyar. Bu işlemleri gerçekleştirmek için, bu örnek yeni bir Görüntü dosyası (GIF biçiminde) uisng MemoryStream nesnesi oluşturur.
//Create an instance of MemoryStream
using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
{
//Create an instance of GifOptions and set its various properties including the Source property
Aspose.Imaging.ImageOptions.GifOptions gifOptions = new Aspose.Imaging.ImageOptions.GifOptions();
gifOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Create an instance of Image
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(gifOptions, 500, 500))
{
//Get the pixels of image by specifying the area as image boundary
Aspose.Imaging.Color[] pixels = image.LoadPixels(image.Bounds);
//Loop over the Array and sets color of alrenative indexed pixel
for (int index = 0; index < pixels.Length; index++)
{
if (index % 2 == 0)
{
//Set the indexed pixel color to yellow
pixels[index] = Aspose.Imaging.Color.Yellow;
}
else
{
//Set the indexed pixel color to blue
pixels[index] = Aspose.Imaging.Color.Blue;
}
}
//Apply the pixel changes to the image
image.SavePixels(image.Bounds, pixels);
// save all changes.
image.Save();
}
// Write MemoryStream to File
using (System.IO.FileStream fileStream = new System.IO.FileStream(@"C:\temp\output.gif", System.IO.FileMode.Create))
{
stream.WriteTo(fileStream);
}
}
LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader)
Yakıt verileri yükler.
public void LoadRawData(Rectangle rectangle, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Parameters
rectangle
Rectangle
Doğrudan veri yüklemek için rektangle.
rawDataSettings
RawDataSettings
Yakıt veri ayarları yüklenen veriler için kullanılır. not veriler belirtilen biçimde değilse o zaman veri dönüşümü yapılacaktır.
rawDataLoader
IPartialRawDataLoader
Yakıt veri yükleyicisi.
Examples
Aşağıdaki örnek, RawDataSettings kullanılarak çekirdek görüntü verilerinden piksellerin nasıl çıkarılacağını gösterir. örneğin, bir görüntüden tamamen şeffaf piksel sayma sorunu göz önünde bulundurun.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\GrayscaleWithAlpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
Aspose.Imaging.RawDataSettings settings = rasterImage.RawDataSettings;
TransparentPixelRawDataCounter rawDataLoader = new TransparentPixelRawDataCounter(settings);
// Load pixels for the whole image. Any rectangular part of the image can be specified as a parameter of the Aspose.Imaging.RasterImage.LoadRawData method.
rasterImage.LoadRawData(rasterImage.Bounds, settings, rawDataLoader);
System.Console.WriteLine("The number of fully transparent pixels is {0}", rawDataLoader.Count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
// In case of raw data, the counter may look like this:
/// <summary>
/// Counts the number of fully transparent pixels with alpha channel value of 0.
/// </summary>
private class TransparentPixelRawDataCounter : IPartialRawDataLoader
{
/// <summary>
/// The number of fully transparent pixels.
/// </summary>
private int count;
/// <summary>
/// The raw data settings of the loaded image.
/// </summary>
private Aspose.Imaging.RawDataSettings rawDataSettings;
/// <summary>
/// Gets the number of fully transparent pixels.
/// </summary>
public int Count
{
get { return this.count; }
}
/// <summary>
/// Initializes a new instance of the <see transparentpixelrawdatacounter=""></see> class.
/// </summary>
/// <param name="settings"/>The raw data settings allow to extract color components from raw data.
public TransparentPixelRawDataCounter(Aspose.Imaging.RawDataSettings settings)
{
this.rawDataSettings = settings;
this.count = 0;
}
/// <summary>
/// Processes the loaded raw data. This method is called back every time when a new portion of raw data is loaded.
/// </summary>
/// <param name="dataRectangle"/>The raw data rectangle.
/// <param name="data"/>The raw data.
/// <param name="start"/>The start data point.
/// <param name="end"/>The end data point.
public void Process(Aspose.Imaging.Rectangle dataRectangle, byte[] data, Aspose.Imaging.Point start, Aspose.Imaging.Point end)
{
int[] channelBits = this.rawDataSettings.PixelDataFormat.ChannelBits;
// Only simple formats are consdired here to simplify the code.
// Let's consider only images with 8 bits per sample.
for (int i = 0; i < channelBits.Length; i++)
{
if (channelBits[i] != 8)
{
throw new System.NotSupportedException();
}
}
switch (this.rawDataSettings.PixelDataFormat.PixelFormat)
{
case PixelFormat.Rgb:
case PixelFormat.Bgr:
{
if (channelBits.Length == 4)
{
// ARGB
for (int i = 0; i < data.Length; i += 4)
{
// The alpha channel is stored last, after the color components.
if (data[i + 3] == 0)
{
this.count++;
}
}
}
}
break;
case PixelFormat.Grayscale:
{
if (channelBits.Length == 2)
{
// Grayscale Alpha
for (int i = 0; i < data.Length; i += 2)
{
// The alpha channel is stored last, after the color components.
if (data[i + 1] == 0)
{
this.count++;
}
}
}
}
break;
default:
throw new System.ArgumentOutOfRangeException("PixelFormat");
}
}
/// <summary>
/// Processes the loaded raw data. This method is called back every time when a new portion of raw data is loaded.
/// </summary>
/// <param name="dataRectangle"/>The raw data rectangle.
/// <param name="data"/>The raw data.
/// <param name="start"/>The start data point.
/// <param name="end"/>The end data point.
/// <param name="loadOptions"/>The load options.
public void Process(Aspose.Imaging.Rectangle dataRectangle, byte[] data, Aspose.Imaging.Point start, Aspose.Imaging.Point end, Aspose.Imaging.LoadOptions loadOptions)
{
this.Process(dataRectangle, data, start, end);
}
}
LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader)
Yakıt verileri yükler.
public void LoadRawData(Rectangle rectangle, Rectangle destImageBounds, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Parameters
rectangle
Rectangle
Doğrudan veri yüklemek için rektangle.
destImageBounds
Rectangle
Görüntüleme sınırları vardır.
rawDataSettings
RawDataSettings
Yakıt veri ayarları yüklenen veriler için kullanılır. not veriler belirtilen biçimde değilse o zaman veri dönüşümü yapılacaktır.
rawDataLoader
IPartialRawDataLoader
Yakıt veri yükleyicisi.
NormalizeAngle()
açıyı normalleştirir.Bu yöntem, kaydırılmış taramadan kurtulmak için taranan metin belgelerine uygulanır.Bu yöntem Aspose.Imaging.RasterImage.GetSkewAngle ve Aspose.Imaging.RasterImage.Rotate(System.Single) yöntemlerini kullanır.
public void NormalizeAngle()
NormalizeAngle(bool, renk)
açıyı normalleştirir.Bu yöntem, kaydırılmış taramadan kurtulmak için taranan metin belgelerine uygulanır.Bu yöntem Aspose.Imaging.RasterImage.GetSkewAngle ve Aspose.Imaging.RasterImage.Rotate(System.Single,System.Boolean,Aspose.Imaging.Color) yöntemlerini kullanır.
public virtual void NormalizeAngle(bool resizeProportionally, Color backgroundColor)
Parameters
resizeProportionally
bool
Eğer ‘gerçek’ olarak ayarlanırsanız, görüntü boyutunuz, diğer durumlarda boyutları dokunmasız bırakır ve yalnızca iç görüntü içeriği döndürülür.
backgroundColor
Color
Arka planın rengi.
Examples
Skew, belge tarama sürecinde ortaya çıkabilecek bir eserdir. belgenin metni / görüntüleri hafif bir açıdan döndürüldüğünde. çeşitli nedenlere sahip olabilir, ancak en yaygın olanı, bir tarama sırasında kağıt yanlış yerleştirilmesidir. bu nedenle, dekew, bu sorunu tarama dosyalarında (yani bitmap) tespit ve düzeltme sürecidir. böylece dekewed belgeler metni / görüntüleri doğru ve yatay olarak ayarlayacaktır.
string dir = "c:\\aspose.imaging\\issues\\net\\3567\\";
string inputFilePath = dir + "skewed.png";
string outputFilePath = dir + "skewed.out.png";
// Get rid of the skewed scan with default parameters
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Load(inputFilePath))
{
// Deskew
image.NormalizeAngle(false /*do not resize*/, Aspose.Imaging.Color.LightGray /*background color*/);
image.Save(outputFilePath);
}
NormalizeHistogram()
Görüntü histogramını normalleştirir - tüm mevcut aralığı kullanmak için piksel değerlerini ayarlar.
public virtual void NormalizeHistogram()
ReadArgb32ScanLine(int ile)
Tüm tarama çizgisini belirlenen tarama çizgisi endeksi ile okuyar.
public int[] ReadArgb32ScanLine(int scanLineIndex)
Parameters
scanLineIndex
int
Scan çizgisinin sıfır tabanlı indeksi.
Returns
int […]
Scan çizgisi 32 bit ARGB renk değerleri array.
ReadScanLine(int ile)
Tüm tarama çizgisini belirlenen tarama çizgisi endeksi ile okuyar.
public Color[] ReadScanLine(int scanLineIndex)
Parameters
scanLineIndex
int
Scan çizgisinin sıfır tabanlı indeksi.
Returns
Color […]
Scan çizgisi piksel renk değerleri array.
ReleaseManagedResources()
Yönetilen kaynakları serbest bırakın. yönetilmemiş kaynakların burada serbest bırakılmadığından emin olun, çünkü zaten serbest bırakılmış olabilirler.
protected override void ReleaseManagedResources()
RemoveMetadata()
Bu görüntü örneği metadata ayarlayarak kaldırın Aspose.Imaging.Xmp.IHasXMPData.xmpDate değeri sıfır.
public override void RemoveMetadata()
ReplaceColor(Renk, byte ve renk)
Bir renk diğerine izin verilen fark ile değiştirir ve pürüzsüz kenarları kurtarmak için orijinal alfa değerini korur.
public void ReplaceColor(Color oldColor, byte oldColorDiff, Color newColor)
Parameters
oldColor
Color
Eski renkler değiştirilmelidir.
oldColorDiff
byte
Eski renk farkı değiştirilmiş renk tonunu genişletebilmek için izin verildi.
newColor
Color
Eski rengi değiştirmek için yeni renkler.
ReplaceColor(İtalya , İtalya , int)
Bir renk diğerine izin verilen fark ile değiştirir ve pürüzsüz kenarları kurtarmak için orijinal alfa değerini korur.
public virtual void ReplaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb)
Parameters
oldColorArgb
int
Eski renk ARGB değeri değiştirilecektir.
oldColorDiff
byte
Eski renk farkı değiştirilmiş renk tonunu genişletebilmek için izin verildi.
newColorArgb
int
Yeni renk ARGB değer eski renk ile değiştirmek için.
ReplaceNonTransparentColors(Color)
Tüm şeffaf olmayan renkleri yeni renklerle değiştirir ve pürüzsüz kenarları kurtarmak için orijinal alfa değerini korur.Not: Görüntülerde şeffaflık olmadan kullanırsanız, tüm renkler tek bir renkle değiştirilir.
public void ReplaceNonTransparentColors(Color newColor)
Parameters
newColor
Color
Yeni renk, şeffaf olmayan renklerle değiştirilir.
ReplaceNonTransparentColors(int ile)
Tüm şeffaf olmayan renkleri yeni renklerle değiştirir ve pürüzsüz kenarları kurtarmak için orijinal alfa değerini korur.Not: Görüntülerde şeffaflık olmadan kullanırsanız, tüm renkler tek bir renkle değiştirilir.
public virtual void ReplaceNonTransparentColors(int newColorArgb)
Parameters
newColorArgb
int
Yeni renk ARGB değeri, şeffaf olmayan renklerle değiştirilir.
Resize(int, int, ImageResizeSettings İndir)
Genişletilmiş seçeneklerle resim yapıştırın.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
Yeni bir genişlik.
newHeight
int
Yeni bir yükseklik.
settings
ImageResizeSettings
Değerlendirme ayarları.
Examples
Bu örnek bir raster görüntüsünü yükler ve çeşitli resize ayarları kullanılarak resize eder.
string dir = "c:\\temp\\";
Aspose.Imaging.ImageResizeSettings resizeSettings = new Aspose.Imaging.ImageResizeSettings();
// The adaptive algorithm based on weighted and blended rational function and lanczos3 interpolation.
resizeSettings.Mode = Aspose.Imaging.ResizeType.AdaptiveResample;
// The small rectangular filter
resizeSettings.FilterType = Aspose.Imaging.ImageFilterType.SmallRectangular;
// The number of colors in the palette.
resizeSettings.EntriesCount = 256;
// The color quantization is not used
resizeSettings.ColorQuantizationMethod = ColorQuantizationMethod.None;
// The euclidian method
resizeSettings.ColorCompareMethod = ColorCompareMethod.Euclidian;
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
// Scale down by 2 times using adaptive resampling.
image.Resize(image.Width / 2, image.Height / 2, resizeSettings);
image.Save(dir + "downsample.adaptive.gif");
}
Rotate(Float , Bool , Renk)
Görüntüleri merkezin etrafında döndürün.
public virtual void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
Pozitif değerler saatlik olarak döndürülür.
resizeProportionally
bool
Eğer ‘gerçek’ olarak ayarlanırsanız, görüntü boyutunuz, diğer durumlarda boyutları dokunmasız bırakır ve yalnızca iç görüntü içeriği döndürülür.
backgroundColor
Color
Arka planın rengi.
Exceptions
Uygulamayan bir istisna
Rotate(Floransa)
Görüntüleri merkezin etrafında döndürün.
public override void Rotate(float angle)
Parameters
angle
float
Pozitif değerler saatlik olarak döndürülür.
Save(Akış, ImageOptionsBase, Rectangle)
Görüntü verilerini kaydetme seçeneklerine göre belirli dosya biçiminde belirtilen akışa kaydeder.
public override void Save(Stream stream, ImageOptionsBase optionsBase, Rectangle boundsRectangle)
Parameters
stream
Stream
Görüntünün verilerini kaydetmek için akış.
optionsBase
ImageOptionsBase
Tasarruf seçenekleri.
boundsRectangle
Rectangle
Hedef görüntüsü düz açıyı sınırlar. kaynak sınırlarını kullanmak için boş düz açıyı ayarlayın.
SaveArgb32Pixels(Çerçeve , int[])
32 bit ARGB piksellerini kaydeder.
public void SaveArgb32Pixels(Rectangle rectangle, int[] pixels)
Parameters
rectangle
Rectangle
Pixel’i kaydetmek için düz açı.
pixels
int
[…]
32 bit ARGB piksel array.
Examples
Aşağıdaki örnek, bir raster görüntüsünün merkezi alanını Aspose.Imaging.RasterImage.SaveArgb32Pixels yöntemini kullanarak siyah piksellerle doldurur.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// The black square
int[] pixels = new int[(rasterImage.Width / 2) * (rasterImage.Height / 2)];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Color.Black.ToArgb();
}
// Draw the black square at the center of the image.
Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(rasterImage.Width / 4, rasterImage.Height / 4, rasterImage.Width / 2, rasterImage.Height / 2);
rasterImage.SaveArgb32Pixels(area, pixels);
rasterImage.Save(dir + "sample.SaveArgb32Pixels.png");
}
SaveCmyk32Pixels(Çerçeve , int[])
Pikselleri kurtarır.
public void SaveCmyk32Pixels(Rectangle rectangle, int[] pixels)
Parameters
rectangle
Rectangle
Pixel’i kaydetmek için düz açı.
pixels
int
[…]
CMYK pikselleri 32 bit bütün değerler olarak sunulmuştur.
Examples
Aşağıdaki örnek, bir raster görüntüsünün merkezi alanını Aspose.Imaging.RasterImage.SaveCmyk32Pixels yöntemini kullanarak siyah piksellerle doldurur.
string dir = @"c:\temp\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get an integer representation of black in the CMYK color space.
int blackCmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(Color.Black);
// The black square.
int[] pixels = new int[(rasterImage.Width / 2) * (rasterImage.Height / 2)];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = blackCmyk;
}
// Draw the black square at the center of the image.
Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(rasterImage.Width / 4, rasterImage.Height / 4, rasterImage.Width / 2, rasterImage.Height / 2);
rasterImage.SaveCmyk32Pixels(area, pixels);
rasterImage.Save(dir + "sample.SaveCmyk32Pixels.png");
}
SaveCmykPixels(Çerçeve, CmykColor[])
Pikselleri kurtarır.Lütfen daha etkili Aspose.Imaging.RasterImage.SaveCmyk32Pixels(Aspose.Imaging.Rectangle,System.Int32[]) yöntemi kullanın.
[Obsolete("Method is obsolete")]
public void SaveCmykPixels(Rectangle rectangle, CmykColor[] pixels)
Parameters
rectangle
Rectangle
Pixel’i kaydetmek için düz açı.
pixels
CmykColor
[…]
CMYK piksel array yapılır.
SavePixels(Rectangle , Renk[])
Pikselleri kurtarır.
public void SavePixels(Rectangle rectangle, Color[] pixels)
Parameters
rectangle
Rectangle
Pixel’i kaydetmek için düz açı.
pixels
Color
[…]
Pixel array yapıyor.
Examples
Aşağıdaki örnek, bir raster görüntüsünün merkezi alanını Aspose.Imaging.RasterImage.SavePixels yöntemini kullanarak siyah piksellerle doldurur.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// The black square
Color[] pixels = new Color[(rasterImage.Width / 2) * (rasterImage.Height / 2)];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = Color.Black;
}
// Draw the black square at the center of the image.
Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(rasterImage.Width / 4, rasterImage.Height / 4, rasterImage.Width / 2, rasterImage.Height / 2);
rasterImage.SavePixels(area, pixels);
rasterImage.Save(dir + "sample.SavePixels.png");
}
Bu örnek, bir Tip Renk aralığında Pixel bilgileri nasıl yükleneceğini gösterir, aralığı manipüle eder ve görüntüye geri koyar. Bu işlemleri gerçekleştirmek için, bu örnek yeni bir Görüntü dosyası (GIF biçiminde) uisng MemoryStream nesnesi oluşturur.
//Create an instance of MemoryStream
using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
{
//Create an instance of GifOptions and set its various properties including the Source property
Aspose.Imaging.ImageOptions.GifOptions gifOptions = new Aspose.Imaging.ImageOptions.GifOptions();
gifOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Create an instance of Image
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(gifOptions, 500, 500))
{
//Get the pixels of image by specifying the area as image boundary
Aspose.Imaging.Color[] pixels = image.LoadPixels(image.Bounds);
//Loop over the Array and sets color of alrenative indexed pixel
for (int index = 0; index < pixels.Length; index++)
{
if (index % 2 == 0)
{
//Set the indexed pixel color to yellow
pixels[index] = Aspose.Imaging.Color.Yellow;
}
else
{
//Set the indexed pixel color to blue
pixels[index] = Aspose.Imaging.Color.Blue;
}
}
//Apply the pixel changes to the image
image.SavePixels(image.Bounds, pixels);
// save all changes.
image.Save();
}
// Write MemoryStream to File
using (System.IO.FileStream fileStream = new System.IO.FileStream(@"C:\temp\output.gif", System.IO.FileMode.Create))
{
stream.WriteTo(fileStream);
}
}
SaveRawData(byte[…], int , Rectangle , RawDataSettings)
Temiz verileri kurtarır.
public void SaveRawData(byte[] data, int dataOffset, Rectangle rectangle, RawDataSettings rawDataSettings)
Parameters
data
byte
[…]
Yakıt verileri için.
dataOffset
int
Başlangıç hammadde verileri ödenir.
rectangle
Rectangle
Yakıt verilerinin doğruluğu.
rawDataSettings
RawDataSettings
Kuru veri ayarları veriler içerir.
SetArgb32Pixel(int , int , int , int)
Belirlenen pozisyon için bir görüntü 32 bit ARGB piksel ayarlayın.
public void SetArgb32Pixel(int x, int y, int argb32Color)
Parameters
x
int
Pixel x yerini kullanır.
y
int
Piksel ve konumu.
argb32Color
int
32 bit ARGB piksel belirli pozisyon için.
Examples
Aşağıdaki örnek bir raster görüntüsünü yükler ve istenmeyen bir piksel rengi belirler.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Sets the color of the top-left pixel.
rasterImage.SetArgb32Pixel(0, 0, Aspose.Imaging.Color.Aqua.ToArgb());
// Another way is to pass an instance of the Aspose.Imaging.Color directly
rasterImage.SetPixel(0, 0, Aspose.Imaging.Color.Aqua);
}
SetPalette(İKOLORPALET, BOOL)
Görüntü paletini oluşturun.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
Palet ayarlamak için.
updateColors
bool
Eğer ‘gerçek’ renkler ayarlanırsa, yeni paletine göre güncellenir; aksi takdirde renk göstergeleri değişmez kalır. değiştirilmemiş göstergeler, bazı göstergelerin ilgili palet girişleri olmadığı takdirde yükleme görüntüsünü bozabilir.
SetPixel(int, int, renk)
Belirlenen pozisyon için bir görüntü pikselini ayarlayın.
public void SetPixel(int x, int y, Color color)
Parameters
x
int
Pixel x yerini kullanır.
y
int
Piksel ve konumu.
color
Color
Piksel renk belirlenmiş pozisyon için.
Examples
Aşağıdaki örnek bir raster görüntüsünü yükler ve istenmeyen bir piksel rengi belirler.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Sets the color of the top-left pixel.
rasterImage.SetArgb32Pixel(0, 0, Aspose.Imaging.Color.Aqua.ToArgb());
// Another way is to pass an instance of the Aspose.Imaging.Color directly
rasterImage.SetPixel(0, 0, Aspose.Imaging.Color.Aqua);
}
SetResolution(Çift , Çift)
Bu Aspose.Imaging.RasterImage için çözünürlüğü ayarlayın.
public virtual void SetResolution(double dpiX, double dpiY)
Parameters
dpiX
double
Aspose.Imaging.RasterImage’ın yatay çözünürlüğü, inç başına noktalarda.
dpiY
double
Aspose.Imaging.RasterImage’ın vertikal çözünürlüğü, inç başına noktalarda.
Examples
Aşağıdaki örnek, bir raster görüntüsünün yatay/vertikal çözünürlüğünü nasıl ayarlayacağınızı gösterir.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Get horizontal and vertical resolution of the image
double horizontalResolution = rasterImage.HorizontalResolution;
double verticalResolution = rasterImage.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");
rasterImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", rasterImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", rasterImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
ToBitmap()
Raster görüntüsünü bitmap’a dönüştürür.Bu yöntem .Net7.0 ve üstü sürümlerde desteklenmez.
public virtual Bitmap ToBitmap()
Returns
Bitmap Hakkında
UpdateDimensions(int , int , int)
Görüntü boyutlarını güncelleyin.
protected abstract void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Yeni görüntü genişliği.
newHeight
int
Yeni görüntü yüksekliği.
UpdateMetadata()
Görüntü metadata güncellenir.
protected virtual void UpdateMetadata()
WriteArgb32ScanLine(int , int , int[])
Tüm tarama çizgisini belirtilen tarama çizgisinin endeksine yazın.
public void WriteArgb32ScanLine(int scanLineIndex, int[] argb32Pixels)
Parameters
scanLineIndex
int
Scan çizgisinin sıfır tabanlı indeksi.
argb32Pixels
int
[…]
32 bit ARGB renkler yazmak için array.
WriteScanLine(Renk , Renk[])
Tüm tarama çizgisini belirtilen tarama çizgisinin endeksine yazın.
public void WriteScanLine(int scanLineIndex, Color[] pixels)
Parameters
scanLineIndex
int
Scan çizgisinin sıfır tabanlı indeksi.
pixels
Color
[…]
Piksel renkler yazmak için hazırlanır.