Class RasterImage
Името на пространството: Aspose.Imaging Асамблея: Aspose.Imaging.dll (25.4.0)
Представлява изображение на растер, което поддържа графични операции.
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
наследници
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
Този пример показва как да изтеглите информация Pixel в Array of Type Color, да манипулирате array и да я върнете към изображението.За да изпълните тези операции, този пример създава нов файл Image (в GIF формат) uisng MemoryStream обект.
//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.
[JsonConstructor]
protected RasterImage()
RasterImage(ICOLORПалате)
Иницијализира нова инстанция на клас Aspose.Imaging.RasterImage.
protected RasterImage(IColorPalette colorPalette)
Parameters
colorPalette
IColorPalette
Цветовата палитра.
Fields
КСНУМКС
XMP метаданни
[JsonProperty]
protected XmpPacketWrapper xmpData
полева стойност
Properties
DataLoader
Получава или поставя данните за зареждане.
[JsonProperty]
protected IRasterImageArgb32PixelLoader DataLoader { get; set; }
стойност на имота
HasAlpha
Получава стойност, показваща дали тази инстанция има алфа.
public virtual bool HasAlpha { get; }
стойност на имота
Examples
Следващият пример зарежда растер изображения и отпечатва информация за формат на сурови данни и алфа канал.
// 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
Следващият пример показва как да се извлече информация за формат на сурови данни и алфа канал от BMP изображение.
// 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
Получава стойност, показваща дали изображението има прозрачен цвят.
public virtual bool HasTransparentColor { get; set; }
стойност на имота
HorizontalResolution
Получава или задава хоризонталната резолюция, в пиксели на инч, на този Aspose.Imaging.RasterImage.
public virtual double HorizontalResolution { get; set; }
стойност на имота
Examples
Примерът по-долу показва как да се зададе хоризонтална/вертикална резолюция на изображението.
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
Забележка по подразбиране тази стойност винаги е 96, тъй като различните платформи не могат да върнат резолюцията на екрана.Можете да разгледате използването на метода SetResolution за актуализиране и на двете стойности на резолуцията в едно обаждане.
ImageOpacity
Налице е несигурност на тази картина.
public virtual float ImageOpacity { get; }
стойност на имота
IsRawDataAvailable
Получава стойност, която показва дали суровото зареждане на данни е налично.
public bool IsRawDataAvailable { get; }
стойност на имота
PremultiplyComponents
Получава или задава стойност, която показва дали компонентите на изображението трябва да бъдат предварително умножени.
public virtual bool PremultiplyComponents { get; set; }
стойност на имота
Examples
Следващият пример създава ново изображение на растер, съхранява посочените полупрозрачни пиксели, след това зарежда тези pixels и получава окончателни цветове в предварително множената форма.
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
Получава или задава настройката на цветния конвертор
public IColorConverter RawCustomColorConverter { get; set; }
стойност на имота
RawDataFormat
Използва се за формат на сурови данни.
public virtual PixelDataFormat RawDataFormat { get; }
стойност на имота
Examples
Следващият пример зарежда растер изображения и отпечатва информация за формат на сурови данни и алфа канал.
// 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
Този пример показва как да изтеглите изображение на DJVU от файлов поток и да отпечатате информация за страниците.
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
Имайте предвид, че когато използвате тези настройки, данните се зареждат без конверсия.
[JsonIgnore]
public RawDataSettings RawDataSettings { get; }
стойност на имота
RawFallbackIndex
Получава или поставя индекса на падане, за да се използва, когато палетният индекс е извън границите
public int RawFallbackIndex { get; set; }
стойност на имота
RawIndexedColorConverter
Получава или задава индексирания цвет конвертор
public IIndexedColorConverter RawIndexedColorConverter { get; set; }
стойност на имота
RawLineSize
Получава размера на суровата линия в байтове.
public virtual int RawLineSize { get; }
стойност на имота
TransparentColor
Изображението получава прозрачен цвят.
public virtual Color TransparentColor { get; set; }
стойност на имота
UpdateXmpData
Получава или задава стойност, която показва дали да актуализирате метаданните на XMP.
public virtual bool UpdateXmpData { get; set; }
стойност на имота
UsePalette
Получава стойност, която показва дали изображението е използвано.
public override bool UsePalette { get; }
стойност на имота
UseRawData
Получава или задава стойност, която показва дали да използвате сурови данни за зареждане, когато суровата информация е налична.
public virtual bool UseRawData { get; set; }
стойност на имота
VerticalResolution
Получава или поставя вертикалната резолюция, в пиксели на инч, на този Aspose.Imaging.RasterImage.
public virtual double VerticalResolution { get; set; }
стойност на имота
Examples
Примерът по-долу показва как да се зададе хоризонтална/вертикална резолюция на изображението.
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
Забележка по подразбиране тази стойност винаги е 96, тъй като различните платформи не могат да върнат резолюцията на екрана.Можете да разгледате използването на метода SetResolution за актуализиране и на двете стойности на резолуцията в едно обаждане.
XmpData
Получава или задава метаданните на XMP.
public virtual XmpPacketWrapper XmpData { get; set; }
стойност на имота
Methods
AdjustBrightness(инт)
Приспособяване на яркостта към изображението.
public virtual void AdjustBrightness(int brightness)
Parameters
brightness
int
Стойност на яркостта.
Examples
Следващият пример прави корекция на яркостта на изображението.
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(Флота)
Контраст на изображението
public virtual void AdjustContrast(float contrast)
Parameters
contrast
float
Контрастна стойност (в диапазон [-100; 100])
Examples
Следващият пример прави корекция на контраста на изображението.
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(плавател, плавател, плавател)
Гама корекция на изображение.
public virtual void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Гама за коефициент на червения канал
gammaGreen
float
Гама за зеления канал коефициент
gammaBlue
float
Гама за синия канал коефициент
Examples
Следващият пример извършва гама корекция на изображението, прилагайки различни коефициенти за цветовите компоненти.
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(Флота)
Гама корекция на изображение.
public virtual void AdjustGamma(float gamma)
Parameters
gamma
float
Гама за червени, зелени и сини канали коефициент
Examples
Следващият пример прави гама корекция на изображението.
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(Двойно)
Бинаризация на изображението с помощта на адаптивния алгоритъм на Брадли, използвайки интегрираното изображение.
public virtual void BinarizeBradley(double brightnessDifference)
Parameters
brightnessDifference
double
Разликата в яркостта между пиксела и средната стойност на прозореца с x s, която се концентрира около него.
BinarizeBradley(Двойна, инт)
Бинаризация на изображението с помощта на адаптивния алгоритъм на Брадли, използвайки интегрираното изображение.
public virtual void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
Разликата в яркостта между пиксела и средната стойност на прозореца с x s, която се концентрира около него.
windowSize
int
Размерът на прозореца с x с на пикселите, които се фокусират около този пикъл
Examples
Следващият пример бинарнизира изображението на растер с адаптивния алгоритъм на Брадли с посочения размер на прозореца.
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(Бийт)
Binarization на изображение с предварително дефиниран праг
public virtual void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Ако съответната сива стойност на пиксел е по-голяма от прага, стойността на 255 ще бъде приписана, 0 в противен случай.
Examples
Следващият пример бинарнизира изображението на растер с предварително дефиниран праг. Бинарните изображения съдържат само 2 цветове - черно и бяло.
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()
Binarization на изображението с Otsu праг
public virtual void BinarizeOtsu()
Examples
Следващият пример бинарнизира растер изображение с Otsu праг. бинаризирани изображения съдържат само 2 цветове - черно и бяло.
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(Точка, RasterImage, Rectangle, байт)
Смесете този образ с изображението overlay".
public virtual void Blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha = 255)
Parameters
origin
Point
Изображението на фонова картина смесва произхода.
overlay
RasterImage
Преобладаващата картина.
overlayArea
Rectangle
Областта на преглъщане.
overlayAlpha
byte
Върху алфата.
Blend(Точка, RasterImage, byte)
Смесете този образ с изображението overlay".
public void Blend(Point origin, RasterImage overlay, byte overlayAlpha = 255)
Parameters
origin
Point
Изображението на фонова картина смесва произхода.
overlay
RasterImage
Преобладаващата картина.
overlayAlpha
byte
Върху алфата.
Dither(Методът на разширяване, int)
Изпълненията се изчерпват на текущата картина.
public void Dither(DitheringMethod ditheringMethod, int bitsCount)
Parameters
ditheringMethod
DitheringMethod
Методът на дистрибуция.
bitsCount
int
Последните битове се броят за дитиране.
Examples
Следващият пример натоварва изображение на растер и извършва граничен и потопен дитиране с помощта на различна дълбочина на палетата.
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(ДитърингMethod, int, IColorPalette)
Изпълненията се изчерпват на текущата картина.
public abstract void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
Методът на дистрибуция.
bitsCount
int
Последните битове се броят за дитиране.
customPalette
IColorPalette
Палетата е предназначена за дитиране.
Filter(Филтриране, FilterOptionsBase)
Филтрира посочения правоъгълник.
public virtual void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
на правоъгълника.
options
FilterOptionsBase
и възможностите.
Examples
Следващият пример прилага различни видове филтри за изображение на растер.
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(в, в)
Има 32-битов ARGB пиксел за изображение.
public int GetArgb32Pixel(int x, int y)
Parameters
x
int
Положението на пиксела X.
y
int
Пиксел и местоположение.
Returns
32-битният ARGB пиксел за посоченото местоположение.
Examples
Следващият пример зарежда изображение на растер и получава цвета на произволен пиксел, представен като 32-битова цялостна стойност.
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);
}
Примерът по-долу показва как изображението кашинг влияе върху производителността.В общия случай, четенето на кеширани данни се извършва по–бързо, отколкото четане на не-кешираните данни.
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-битови ARGB пиксели.
public int[] GetDefaultArgb32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за получаване на пиксели.
Returns
int []
Задължителността на пикселите.
GetDefaultPixels(Изтегляне на IPartialArgb32PixelLoader)
Получават се стандартните пиксели с помощта на частичен Pixel Loader.
public void GetDefaultPixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
Прекъгълникът за получаване на пиксели.
partialPixelLoader
IPartialArgb32PixelLoader
Частичен пиксел за зареждане.
GetDefaultRawData(Rectangle, IPartialRawDataLoader, Настройки за данни)
Получаване на подразбиране на сурови данни с помощта на частичен пиксел за зареждане.
public void GetDefaultRawData(Rectangle rectangle, IPartialRawDataLoader partialRawDataLoader, RawDataSettings rawDataSettings)
Parameters
rectangle
Rectangle
Прекъгълникът за получаване на пиксели.
partialRawDataLoader
IPartialRawDataLoader
Частни сурови данни за зареждане.
rawDataSettings
RawDataSettings
Настройки на сурови данни.
GetDefaultRawData(Ректангъл, RawDataSettings)
Получават се дефолтните сурови данни.
public byte[] GetDefaultRawData(Rectangle rectangle, RawDataSettings rawDataSettings)
Parameters
rectangle
Rectangle
Пътят за получаване на сурови данни.
rawDataSettings
RawDataSettings
Настройки на сурови данни.
Returns
byte []
Дефиниция на суровите данни.
GetModifyDate(Боул)
Получаване на датата и времето на образа на ресурса е последната модификация.
public virtual DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
ако сте зададени на “истински”, използвайте информацията от FileInfo като стандартна стойност.
Returns
Датата и времето на изображението на ресурса е последната промяна.
GetPixel(в, в)
Налице е пиксел за изображение.
public Color GetPixel(int x, int y)
Parameters
x
int
Положението на пиксела X.
y
int
Пиксел и местоположение.
Returns
Цветът на пиксела за посоченото място.
Examples
Следващият пример зарежда изображение на растер и получава цвета на произволен пиксел.
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()
Вземете ъгъла на скейт.Този метод се прилага за скенираните текстови документи, за да се определи ъгълът на сканиране по време на скринирането.
public float GetSkewAngle()
Returns
Крайният ъгъл е в градуса.
Grayscale()
Преобразуване на изображението в неговия грейскален представител
public virtual void Grayscale()
Examples
Следващият пример преобразува цветно изображение на растер в неговия грейскален представител. Грейските изображения се състоят изключително от сиви нюанси и носят само информация за интензитет.
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-битови ARGB пиксели.
public int[] LoadArgb32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за зареждане на пиксели от.
Returns
int []
32-битови ARGB пиксели са на разположение.
Examples
Примерът по-долу показва как да се зареждат и обработват пикселите на изображението на растер.Пекселите се представят като 32-битови цялостни стойности.Например, помислете за проблем с броя на напълно прозрачни pixels от изображение.
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-битови ARGB пиксели.
public long[] LoadArgb64Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за зареждане на пиксели от.
Returns
long []
64-битови ARGB пиксели са на разположение.
Examples
Примерът по-долу показва как да се зареждат и обработват пикселите на изображение на растер. Пиксели са представени като 64-битови цели стойности. Например, помислете за проблем с броенето на напълно прозрачни pixels на снимка.
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)
Изтегляне на пиксели в CMYK формат.
public int[] LoadCmyk32Pixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за зареждане на пиксели от.
Returns
int []
Натоварените CMYK пиксели присъстват като 32-битови стойности.
LoadCmykPixels(Rectangle)
Изтегляне на пиксели в CMYK формат.Моля, използвайте по-ефективно метода на Aspose.Imaging.RasterImage.LoadCmyk32Pixels(W L 17 .Rectangle).
[Obsolete("Method is obsolete")]
public CmykColor[] LoadCmykPixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за зареждане на пиксели от.
Returns
CmykColor []
Натоварените CMYK пиксели са на разположение.
LoadPartialArgb32Pixels(Изтегляне на IPartialArgb32PixelLoader)
32-битови ARGB пиксели се зареждат частично с пакети.
public void LoadPartialArgb32Pixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
Желаемият правоъгълник
partialPixelLoader
IPartialArgb32PixelLoader
32-битният ARGB пиксел за зареждане.
Examples
Следващият пример показва как да зареждате и обработвате пиксели на изображение с помощта на вашия собствен частичен процесор. Например, помислете за проблем с броенето на напълно прозрачни pixels на снимка. За да се изчисляват прозорливи pixles с използване на механизъм за частично зареждане, се въвежда отделен клас TransparentArgb32PixelCounter изпълнява Aspose.Imaging.IPartialArGB32ПикселLoader.
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(Изтегляне на IPartialArgb64PixelLoader)
64-битови ARGB пиксели се зареждат частично с пакети.
public void LoadPartialArgb64Pixels(Rectangle rectangle, IPartialArgb64PixelLoader partialPixelLoader)
Parameters
rectangle
Rectangle
Желаемият правоъгълник
partialPixelLoader
IPartialArgb64PixelLoader
64-битният ARGB пиксел за зареждане.
LoadPartialPixels(Изтегляне на IPartialPixelLoader)
Зареждане на пиксели частично с пакети.
public void LoadPartialPixels(Rectangle desiredRectangle, IPartialPixelLoader pixelLoader)
Parameters
desiredRectangle
Rectangle
Желаемият правоъгълник
pixelLoader
IPartialPixelLoader
Пиксел за зареждане.
Examples
Примерът по-долу показва как да зареждате и обработвате пикселите на изображение с помощта на вашия собствен частичен процесор. Например, помислете за проблем с броенето на напълно прозрачни пиксили на снимка. За да се изчисли прозорец, използвайки механизма за частично зареждане, се въвежда отделен клас TransparentPixelCounter, който изпълнява Aspose.Imaging.IPartialПикселLoader.
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)
Изтегляне на пиксели.
public Color[] LoadPixels(Rectangle rectangle)
Parameters
rectangle
Rectangle
Прекъгълникът за зареждане на пиксели от.
Returns
Color []
Натоварените пиксели се разширяват.
Examples
Примерът по-долу показва как да зареждате и обработвате пикселите на изображение. например, помислете за проблем с броенето на напълно прозрачни pixels на снимка.
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);
}
Този пример показва как да изтеглите информация Pixel в Array of Type Color, да манипулирате array и да я върнете към изображението.За да изпълните тези операции, този пример създава нов файл Image (в GIF формат) uisng MemoryStream обект.
//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(Ректангъл, RawDataSettings, IPartialRawDatLoader)
Изтеглят сурови данни.
public void LoadRawData(Rectangle rectangle, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Parameters
rectangle
Rectangle
Прекъгълник за зареждане на сурови данни от.
rawDataSettings
RawDataSettings
Настройките на суровите данни, които трябва да се използват за заредени данни.Забележете, че ако данните не са в посочения формат, тогава ще се извърши конвертиране на информация.
rawDataLoader
IPartialRawDataLoader
Изтегляне на сурови данни.
Examples
Следващият пример показва как да се извличат пиксели от суровите данни на изображението, като се използват RawDataSettings. например, помислете за проблем с броя на напълно прозрачни pixels на снимка.
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, RawDataSettings, IPartialRawDatLoader)
Изтеглят сурови данни.
public void LoadRawData(Rectangle rectangle, Rectangle destImageBounds, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Parameters
rectangle
Rectangle
Прекъгълник за зареждане на сурови данни от.
destImageBounds
Rectangle
Изображението е ограничено.
rawDataSettings
RawDataSettings
Настройките на суровите данни, които трябва да се използват за заредени данни.Забележете, че ако данните не са в посочения формат, тогава ще се извърши конвертиране на информация.
rawDataLoader
IPartialRawDataLoader
Изтегляне на сурови данни.
NormalizeAngle()
Нормализира ъгъла.Този метод се прилага за сканираните текстови документи, за да се отървете от скенираното сканиране.Този метод използва методите на Aspose.Imaging.RasterImage.GetSkewAngle и Wl17. RasterIme.Roate(System.Single).
public void NormalizeAngle()
NormalizeAngle(Боя, Цвят)
Нормализира ъгъла.Този метод се прилага за сканираните текстови документи, за да се отървете от скенираното сканиране.Този метод използва методите на Aspose.Imaging.RasterImage.GetSkewAngle и W L 17.Растериимге.Ротате(System.Single,Systems.Boolean,Wl17__.Color).
public virtual void NormalizeAngle(bool resizeProportionally, Color backgroundColor)
Parameters
resizeProportionally
bool
ако сте зададени на “истински”, размерът на изображението ви ще бъде променен в съответствие с въртящите се правоъгълни (коренни точки) проекции в друг случай, които оставят измеренията без докосване и само вътрешното изображение съдържание се върти.
backgroundColor
Color
Цветът на фона.
Examples
Skew е артефакт, който може да се появи по време на процеса на скениране на документи, когато текстът / изображенията на документа се въртят в лесен ъгъл. Тя могат да имат различни причини, но най-честата е, че хартията се греши по времето на сканирането. Следователно, десква е процесът на откриване и коригиране този проблем върху сканираните файлове (т.е. бита карта), така че разклонените документи ще имат текста / снимки правилно и хоризонтално.
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()
Нормализира хистограмата на изображението — коригира стойностите на пикселите, за да използва всички налични диапазони.
public virtual void NormalizeHistogram()
ReadArgb32ScanLine(инт)
Прочетете цялата линия за сканиране от посочения индекс на линия.
public int[] ReadArgb32ScanLine(int scanLineIndex)
Parameters
scanLineIndex
int
Нисък индекс на сканираната линия.
Returns
int []
Скенерната линия 32-битови ARGB цветови стойности.
ReadScanLine(инт)
Прочетете цялата линия за сканиране от посочения индекс на линия.
public Color[] ReadScanLine(int scanLineIndex)
Parameters
scanLineIndex
int
Нисък индекс на сканираната линия.
Returns
Color []
Скенерната линия пиксел цветове стойности на редица.
ReleaseManagedResources()
Уверете се, че не управлявани ресурси не се пускат тук, тъй като те може да са вече пуснати.
protected override void ReleaseManagedResources()
RemoveMetadata()
Премахване на метаданните на тази образа, като зададете тази стойност Aspose.Imaging.Xmp.IHasxmpData. нула.
public override void RemoveMetadata()
ReplaceColor(Цвет, байт и цвят)
Заменя един цвят на друг с допустима разлика и запазва оригиналната алфа стойност, за да спаси гладки ръбове.
public void ReplaceColor(Color oldColor, byte oldColorDiff, Color newColor)
Parameters
oldColor
Color
Старият цвят трябва да бъде заменен.
oldColorDiff
byte
Разликата в стария цвят е позволена, за да може да разшири замествания цвят.
newColor
Color
Нов цвят за замяна на стария цвят.
ReplaceColor(Бъти, инт)
Заменя един цвят на друг с допустима разлика и запазва оригиналната алфа стойност, за да спаси гладки ръбове.
public virtual void ReplaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb)
Parameters
oldColorArgb
int
Старият цвят ARGB стойност трябва да бъде заменен.
oldColorDiff
byte
Разликата в стария цвят е позволена, за да може да разшири замествания цвят.
newColorArgb
int
Нов цвят ARGB стойност за замяна на стария цвят с.
ReplaceNonTransparentColors(Color)
Заменя всички непрозрачни цветове с нов цвят и запазва оригиналната алфа стойност, за да спаси гладки ръбове.Забележка: Ако го използвате на изображения без прозрачност, всички цветове ще бъдат заменени с един.
public void ReplaceNonTransparentColors(Color newColor)
Parameters
newColor
Color
Нов цвят за замяна на непрозрачни цветове.
ReplaceNonTransparentColors(инт)
Заменя всички непрозрачни цветове с нов цвят и запазва оригиналната алфа стойност, за да спаси гладки ръбове.Забележка: Ако го използвате на изображения без прозрачност, всички цветове ще бъдат заменени с един.
public virtual void ReplaceNonTransparentColors(int newColorArgb)
Parameters
newColorArgb
int
Нов цвят ARGB стойност за замяна на непрозрачни цветове с.
Resize(Инт, инт и ImageResizeSettings)
Възстановяване на изображението с разширени опции.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
Новата ширина.
newHeight
int
Новата височина.
settings
ImageResizeSettings
Изтегляне на настройките.
Examples
Този пример натоварва изображение на растер и го рецизира с помощта на различни настройки за резистентност.
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(Флоат, Боол, Цвет)
Снимка се върти около центъра.
public virtual void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
Позитивните стойности ще се въртят по часовника.
resizeProportionally
bool
ако сте зададени на “истински”, размерът на изображението ви ще бъде променен в съответствие с въртящите се правоъгълни (коренни точки) проекции в друг случай, които оставят измеренията без докосване и само вътрешното изображение съдържание се върти.
backgroundColor
Color
Цветът на фона.
Exceptions
Неизпълнени изключения
Rotate(Флота)
Снимка се върти около центъра.
public override void Rotate(float angle)
Parameters
angle
float
Позитивните стойности ще се въртят по часовника.
Save(Поток, ImageOptionsBase, Rectangle)
Съхранява данните на изображението в посочения поток във формат на файла в съответствие с опциите за съхранение.
public override void Save(Stream stream, ImageOptionsBase optionsBase, Rectangle boundsRectangle)
Parameters
stream
Stream
Потокът за съхранение на данните на изображението.
optionsBase
ImageOptionsBase
Възможностите за спасяване.
boundsRectangle
Rectangle
Снимката на дестинацията се ограничава с правоъгълност.Настройки на празен правоугас за използване на източните граници.
SaveArgb32Pixels(Връзката, инт[])
Съхранява 32-битови ARGB пиксели.
public void SaveArgb32Pixels(Rectangle rectangle, int[] pixels)
Parameters
rectangle
Rectangle
Прекъгълникът за съхранение на пиксели.
pixels
int
[]
32-битови ARGB пиксели са на разположение.
Examples
Следващият пример запълва централната област на изображението с черни пиксели, като използва метода Aspose.Imaging.RasterImage.SaveArgb32Pixels.
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(Връзката, инт[])
Спасява пикселите.
public void SaveCmyk32Pixels(Rectangle rectangle, int[] pixels)
Parameters
rectangle
Rectangle
Прекъгълникът за съхранение на пиксели.
pixels
int
[]
CMYK пикселите са представени като 32-битови цели стойности.
Examples
Следващият пример запълва централната област на изображението с черни пиксели, като използва метода Aspose.Imaging.RasterImage.SaveCmyk32Pixels.
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(Ректангъл, CmykColor[])
Спасява пикселите.Моля, използвайте по-ефективно метода Aspose.Imaging.RasterImage.SaveCmyk32Pixels(W L 17 .Rectangle,System.Int32[]).
[Obsolete("Method is obsolete")]
public void SaveCmykPixels(Rectangle rectangle, CmykColor[] pixels)
Parameters
rectangle
Rectangle
Прекъгълникът за съхранение на пиксели.
pixels
CmykColor
[]
CMYK пикселите се разширяват.
SavePixels(Ректангъл, Цвет[])
Спасява пикселите.
public void SavePixels(Rectangle rectangle, Color[] pixels)
Parameters
rectangle
Rectangle
Прекъгълникът за съхранение на пиксели.
pixels
Color
[]
Пикселите се разпръскват.
Examples
Следващият пример запълва централната област на изображението на растер с черни пиксели, като използва метода Aspose.Imaging.RasterImage.SavePixels.
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");
}
Този пример показва как да изтеглите информация Pixel в Array of Type Color, да манипулирате array и да я върнете към изображението.За да изпълните тези операции, този пример създава нов файл Image (в GIF формат) uisng MemoryStream обект.
//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(Бийт[], инт, Rectangle, RawDataSettings)
Съхранява сурови данни.
public void SaveRawData(byte[] data, int dataOffset, Rectangle rectangle, RawDataSettings rawDataSettings)
Parameters
data
byte
[]
Това са сурови данни.
dataOffset
int
Първоначалните сурови данни се компенсират.
rectangle
Rectangle
Суровите данни са правоъгълни.
rawDataSettings
RawDataSettings
Суровите данни задават данните, които са в.
SetArgb32Pixel(Инт, инт, инт)
Поставете изображение на 32-битов ARGB пиксел за посочената позиция.
public void SetArgb32Pixel(int x, int y, int argb32Color)
Parameters
x
int
Положението на пиксела X.
y
int
Пиксел и местоположение.
argb32Color
int
32-битният ARGB пиксел за посочената позиция.
Examples
Следващият пример зарежда изображение на растер и поставя цвета на произволен пиксел.
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(Изолация, Bool)
Поставете палетата на изображението.
public override void SetPalette(IColorPalette palette, bool updateColors)
Parameters
palette
IColorPalette
Палетата трябва да бъде поставена.
updateColors
bool
ако сте зададени на “истински” цветове ще бъдат актуализирани в съответствие с новата палета; в противен случай индексите на цветовете остават непроменени.
SetPixel(Цветовете, цветето)
Поставете пиксел на изображението за посочената позиция.
public void SetPixel(int x, int y, Color color)
Parameters
x
int
Положението на пиксела X.
y
int
Пиксел и местоположение.
color
Color
Цветът на пиксела за определената позиция.
Examples
Следващият пример зарежда изображение на растер и поставя цвета на произволен пиксел.
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(Двойна, двойна)
Поставете резолюцията за този Aspose.Imaging.RasterImage.
public virtual void SetResolution(double dpiX, double dpiY)
Parameters
dpiX
double
Горизонталната резолюция, в точки на инч, на Aspose.Imaging.RasterImage.
dpiY
double
Вертикалната резолюция, в точки на инч, на Aspose.Imaging.RasterImage.
Examples
Примерът по-долу показва как да се зададе хоризонтална/вертикална резолюция на изображението.
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()
Преобразува изображението на растер в битмапа.Този метод не се поддържа в версии от .Net7.0 и по-високи.
public virtual Bitmap ToBitmap()
Returns
Битмапа
UpdateDimensions(в, в)
Актуализирайте измеренията на изображението.
protected abstract void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Новото изображение с широчина.
newHeight
int
Новата снимка е на височина.
UpdateMetadata()
Актуализирайте метаданните на изображението.
protected virtual void UpdateMetadata()
WriteArgb32ScanLine(в, в[])
Напишете цялата линия за сканиране към указания индекс на линия.
public void WriteArgb32ScanLine(int scanLineIndex, int[] argb32Pixels)
Parameters
scanLineIndex
int
Нисък индекс на сканираната линия.
argb32Pixels
int
[]
32-битовите ARGB цветове са подходящи за писане.
WriteScanLine(Цветът, цветът[])
Напишете цялата линия за сканиране към указания индекс на линия.
public void WriteScanLine(int scanLineIndex, Color[] pixels)
Parameters
scanLineIndex
int
Нисък индекс на сканираната линия.
pixels
Color
[]
Цветовете на пиксела са готови да напишат.