Class RasterCachedMultipageImage

Class RasterCachedMultipageImage

ja nimityö: Aspose.Imaging Kokoelma: Aspose.Imaging.dll (25.4.0)

Rasterin monipuolinen kuva

public abstract class RasterCachedMultipageImage : RasterCachedImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImage

Inheritance

object DisposableObject DataStreamSupporter Image RasterImage RasterCachedImage RasterCachedMultipageImage

Derived

ApngImage , DicomImage , DjvuImage , GifImage , IcoImage , TiffImage , WebPImage

Implements

IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImage

Perintöjäsenet

RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.OnCached() , RasterCachedImage.OnPaletteChanged(IColorPalette, IColorPalette) , RasterCachedImage.IsCached , RasterImage.xmpData , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.ReleaseManagedResources() , RasterImage.UpdateMetadata() , RasterImage.UpdateDimensions(int, int) , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , RasterImage.DataLoader , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.UpdateContainer(Image) , Image.GetCanNotSaveMessage(ImageOptionsBase) , Image.GetFitRectangle(Rectangle) , Image.GetImage2Export(ImageOptionsBase, Rectangle, IImageExporter) , Image.GetFitRectangle(Rectangle, int[]) , Image.OnPaletteChanged(IColorPalette, IColorPalette) , Image.OnPaletteChanging(IColorPalette, IColorPalette) , Image.ReleaseManagedResources() , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.timeout , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.SaveData(Stream) , DataStreamSupporter.ReleaseManagedResources() , DataStreamSupporter.OnDataStreamContainerChanging(StreamContainer) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.ReleaseManagedResources() , DisposableObject.ReleaseUnmanagedResources() , DisposableObject.VerifyNotDisposed() , DisposableObject.Disposed , object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

RasterCachedMultipageImage(ICOLORPALETTI)

Aloitetaan uusi esimerkki Aspose.Imaging.RasterCachedMultipageImage luokasta.

protected RasterCachedMultipageImage(IColorPalette colorPalette)

Parameters

colorPalette IColorPalette

Ja väri paletti.

RasterCachedMultipageImage()

Aloitetaan uusi esimerkki Aspose.Imaging.RasterCachedMultipageImage luokasta.

protected RasterCachedMultipageImage()

Properties

BackgroundColor

Saat tai asettaa arvo taustan värille.

public override Color BackgroundColor { get; set; }

Omistuksen arvo

Color

BitsPerPixel

Saa kuvan bittit pixel-laskenta kohden.

public override int BitsPerPixel { get; }

Omistuksen arvo

int

HasAlpha

Saat arvon, joka osoittaa, onko tässä tapauksessa alfa.

public override bool HasAlpha { get; }

Omistuksen arvo

bool

HasTransparentColor

Saat arvon, joka osoittaa, onko kuvalla läpinäkyvä väri.

public override bool HasTransparentColor { get; }

Omistuksen arvo

bool

Height

Se saa kuvan korkeuden.

public override int Height { get; }

Omistuksen arvo

int

ImageOpacity

Tällainen kuva on epäselvä.

public override float ImageOpacity { get; }

Omistuksen arvo

float

IsCached

Saat arvon, joka osoittaa, onko kuvan tiedot tallennettu tällä hetkellä.

public override bool IsCached { get; }

Omistuksen arvo

bool

PageCount

Saa sivun laskun.

public abstract int PageCount { get; }

Omistuksen arvo

int

PageExportingAction

Saat tai asettaa sivun vientiä toimintaa.Huomaa, että tämän menetelmän asetukset vapauttavat automaattisesti sivun resursseja sen jälkeen, kun se suoritetaan.Se suoritetaan vasta ennen kuin jokainen sivu on tallennettu.

public virtual PageExportingAction PageExportingAction { get; set; }

Omistuksen arvo

PageExportingAction

Examples

Seuraavassa esimerkissä on taulukon muuntaminen ennen Tiff-kuvien tallentamista (eksportointia).

string fileName = "10MB_Tif.tif";
                                                                                                  string inputFileName = fileName;

                                                                                                  string outputFileNameTif = "output.tif";

                                                                                                  //The possibility of batch conversion before saving (exporting) Tiff images is implemented.

                                                                                                  using (Aspose.Imaging.FileFormats.Tiff.TiffImage tiffImage = (Aspose.Imaging.FileFormats.Tiff.TiffImage)Aspose.Imaging.Image.Load(inputFileName))
                                                                                                  {
                                                                                                      // Set batch operation for pages
                                                                                                      tiffImage.PageExportingAction = delegate(int index, Image page)
                                                                                                      {
                                                                                                          // Fires garbage collection to avoid unnecessary garbage storage from previous pages
                                                                                                          GC.Collect();

                                                                                                          ((Aspose.Imaging.RasterImage)page).Rotate(90);
                                                                                                      };

                                                                                                      tiffImage.Save(outputFileNameTif);

                                                                                                      /* Attention! In batch mode all pages will be released in this line!
                                                                                                       If you want to further perform operations on the original image, you should reload it from the source to another instance. */
                                                                                                  }

Pages

Se saa sivut.

public abstract Image[] Pages { get; }

Omistuksen arvo

Image []

Width

Saa kuvan leveys.

public override int Width { get; }

Omistuksen arvo

int

XmpData

Saat tai asettaa XMP-tiedot kehyksestä.

public override XmpPacketWrapper XmpData { get; set; }

Omistuksen arvo

XmpPacketWrapper

Methods

AdjustBrightness(Sisältää)

Muokkaa brightness’ kuvalle.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

ja kirkkauden arvo.

AdjustContrast(Flottaa)

Aspose.Imaging.Kuvan vastakohta

public override void AdjustContrast(float contrast)

Parameters

contrast float

Kontrastin arvo (sarjassa [-100; 100])

AdjustGamma(laivasto, laivasto ja laivasto)

Gamma-korjaus kuvasta

public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)

Parameters

gammaRed float

Punaisen kanavan koefficientti

gammaGreen float

Gamma vihreän kanavan koefficientille

gammaBlue float

Gamma sininen kanava koefficientti

AdjustGamma(Flottaa)

Gamma-korjaus kuvasta

public override void AdjustGamma(float gamma)

Parameters

gamma float

Punaiset, vihreät ja siniset kanavat

BinarizeBradley(Kaksinkertainen int)

Binarisaatio kuvan käyttäen Bradleyn adaptiivisen raja-arvon algoritmia käyttäen integroitua kuvan raja-arvoa

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

Pikselin ja s x s ikkunan keskiarvon välinen kirkkauden eroKeskitetään tämän pixelin ympärille.

windowSize int

S x s ikkunan koko pikselit keskittyvät tämän pikselin ympärille

BinarizeBradley(Kaksinkertainen)

Binarisaatio kuvan käyttäen Bradleyn adaptiivisen raja-arvon algoritmia käyttäen integroitua kuvan raja-arvoa

public override void BinarizeBradley(double brightnessDifference)

Parameters

brightnessDifference double

Pikselin ja s x s ikkunan keskiarvon välinen kirkkauden eroKeskitetään tämän pixelin ympärille.

BinarizeFixed(bytejä)

Binarisaatio kuvasta, jolla on etukäteen määritelty raja

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Jos pixelin vastaava keltainen arvo on suurempi kuin raja,255 annetaan sille, 0 muutoin.

BinarizeOtsu()

Binarisaatio kuvan otsu rajauksella

public override void BinarizeOtsu()

Blend(Pisteet, RasterImage, Rectangle, byte)

Sekoita tämä kuvan esimerkki overlay" -kuvan kanssa.

public override void Blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha = 255)

Parameters

origin Point

Taustakuva sekoittaa alkuperää.

overlay RasterImage

Ylivoimainen kuva on.

overlayArea Rectangle

ylijäämätön alue.

overlayAlpha byte

Ylivoimainen alfa.

Exceptions

ImageException

Kuva poikkeus

CacheData()

Piilotetaan yksityiset tiedot.

public override void CacheData()

CanDoAdjustments()

Määritä, onko tämä tapaus [on mahdollista tehdä muutoksia].

protected virtual bool CanDoAdjustments()

Returns

bool

“Totuus” jos tämä tapaus [on mahdollista tehdä muutoksia]; muutoin, “virhe”.

Crop(Rectangle)

ja kaataa kuvan.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

Se on oikea.

Crop(Inti, Inti, Inti ja Inti)

Kasvi kuvaa muutoksilla.

public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)

Parameters

leftShift int

Vasemmisto muuttuu.

rightShift int

Oikea muutos on.

topShift int

Korkeimman vaihdon mukaan.

bottomShift int

Alhainen muutos on.

Exceptions

ArgumentException

Oikea reaktio - väärätaiRectangle on sisällytettävä kuvan rajoihin. - rektangli

ImageException

Ei voi kasvaa kuvaa. Frame indeksi: " + frameIndextaiKuvaa ei voi viljellä.

CropMain(Inti, Inti, Inti ja Inti)

Sekoita päällikkö.

protected virtual void CropMain(int leftShift, int rightShift, int topShift, int bottomShift)

Parameters

leftShift int

Vasemmisto muuttuu.

rightShift int

Oikea muutos on.

topShift int

Korkeimman vaihdon mukaan.

bottomShift int

Alhainen muutos on.

Dither(DitheringMetodi, int, IColorPalette)

Näytetään nykyisessä kuvassa.

public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)

Parameters

ditheringMethod DitheringMethod

Siirtymisen menetelmä on.

bitsCount int

Lopulliset bitit lasketaan mittaamiseen.

customPalette IColorPalette

Käytettävissä oleva paletti Ditheringille.

Filter(Rectangle ja FilterOptionsBase)

Suodatetaan määritelty reaktio.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

Se on oikea.

options FilterOptionsBase

ja vaihtoehtoja.

GetPagesAsEnumerable()

Pidä sivut luettavina.

protected virtual IEnumerable<image/> GetPagesAsEnumerable()

Returns

IEnumerable < Image >

omia sivuja niin kuin on lueteltu.

GetSerializedStream(ImageOptionsBase, Rectangle, ulos int)

Siirretään APS:een

public override Stream GetSerializedStream(ImageOptionsBase imageOptions, Rectangle clippingRectangle, out int pageNumber)

Parameters

imageOptions ImageOptionsBase

Kuvien vaihtoehtoja varten.

clippingRectangle Rectangle

Kynttilän oikea kulma.

pageNumber int

Sivun numero on.

Returns

Stream

Serioitu virtaus

Grayscale()

Kuvan muuntaminen sen grayscale edustukseen

public override void Grayscale()

NormalizeAngle(Punainen, väri)

Normalisoi kulman.Tätä menetelmää sovelletaan skannattuihin tekstiasiakirjoihin päästä eroon skannatuista skannista.Tällä menetelmällä käytetään Aspose.Imaging.RasterImage.GetSkewAngle- ja Wl17. RasterCachedMultipageImagen.Rootate-menetelmiä (System.Single,Sistem.Boolean,__W L17 _.Color).

public override void NormalizeAngle(bool resizeProportionally, Color backgroundColor)

Parameters

resizeProportionally bool

Jos asetat “todelliseksi”, kuvan koon muuttuu kierrettyjen reikiä (kulmanpisteiden) projektioiden mukaan muissa tapauksissa, jotka jättävät ulottuvuudet koskemattomiksi ja vain sisäiset kuvan sisällöt kierrätetään.

backgroundColor Color

Taustan väri.

NormalizeHistogram()

Normalisoi kuvan histogrammi - säätää pixel-arvoja käyttämään kaikkia käytettävissä olevia taajuuksia.

public override void NormalizeHistogram()

ReleaseManagedResources()

Varmista, että hallitsemattomia resursseja ei ole vapautettu täällä, koska ne voivat ollajo vapautettu.

protected override void ReleaseManagedResources()

ReplaceColor(Inti, byte ja int)

Se korvaa yhden värin toiseen sallitulla erolla ja säilyttää alkuperäisen alfa-arvon säästääkseen sileät reunat.

public override void ReplaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb)

Parameters

oldColorArgb int

Vanha väri ARGB arvo korvataan.

oldColorDiff byte

Vanhassa värissä sallittu ero pystyy laajentamaan korvattua väriä.

newColorArgb int

Uusi väri ARGB arvo korvata vanhan värin.

ReplaceNonTransparentColors(Sisältää)

Korvaa kaikki läpinäkyvät värit uudella värillä ja säilyttää alkuperäisen alfa-arvon säästääkseen sileät reunat.Huomautus: Jos käytät sitä kuvia ilman läpinäkyvyyttä, kaikki värit korvataan yhdellä.

public override void ReplaceNonTransparentColors(int newColorArgb)

Parameters

newColorArgb int

Uusi väri ARGB-arvo korvaa läpinäkyviä värejä.

Resize(int, int, resizeTyppi)

ja kuvasta uudelleen.

public override void Resize(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

Ja uusi leveys.

newHeight int

Ja uusi korkeus.

resizeType ResizeType

Tyyppinen reissu.

Resize(int, int, ImageResizeSettings)

ja kuvasta uudelleen.

public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)

Parameters

newWidth int

Ja uusi leveys.

newHeight int

Ja uusi korkeus.

settings ImageResizeSettings

Siirretään uudelleen asetukset.

ResizeHeightProportionally(Tyyppi, ResizeTyppi)

Vähennä leveyttä suhteellisesti.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

Ja uusi korkeus.

resizeType ResizeType

Tyyppinen reissu.

ResizeMain(int, int, resizeTyppi)

Pidä kuvaa vain uudelleen.

protected virtual void ResizeMain(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

Ja uusi leveys.

newHeight int

Ja uusi korkeus.

resizeType ResizeType

Tyyppinen reissu.

ResizeWidthProportionally(Tyyppi, ResizeTyppi)

Vähennä leveyttä suhteellisesti.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

Ja uusi leveys.

resizeType ResizeType

Tyyppinen reissu.

Rotate(Float, Bool ja väri)

Aspose.Imaging.RasterCachedMultipageImage.Rootate(System.Single,Sistem.Boolean,_Wl17.Color) kuva keskustan ympärillä.

public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)

Parameters

angle float

Kiertävä kulma asteina. Positiiviset arvot kiertävät kelloa.

resizeProportionally bool

jos asetat ’totuus’ sinulla on kuvan koon muutospohjaisesti pyöristetty reikiä (kulmanpisteitä) projektioita muissa tapauksissa, jotka jättävät ulottuvuudet koskemattomat ja vainsisäinen kuva sisältöä kierrätetään.

backgroundColor Color

Taustan väri.

RotateFlip(RotateFlipType)

Pyöri, flips, tai pyörii ja flip kaikki sivut.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Pyöreä flip tyyppi.

RotateFlipAll(RotateFlipType)

Käännä kaikki flip.

[Obsolete("Please use RotateFlip instead of this method.")]
public virtual void RotateFlipAll(RotateFlipType rotateFlip)

Parameters

rotateFlip RotateFlipType

Pyöreä flip.

RotateFlipMain(RotateFlipType)

Käännä Flip Main.

protected virtual void RotateFlipMain(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Tyyppi pyöristetty flip.

SavePixelsInternalMain(Säätiö, int[])

Se säästää pixelien sisäinen pää.

protected virtual void SavePixelsInternalMain(Rectangle rectangle, int[] pixels)

Parameters

rectangle Rectangle

Se on oikea.

pixels int []

ja pixelit.

 Suomi