Class RasterCachedImage

RasterCachedImage class

Vertegenwoordigt een rasterafbeelding die bewerkingen voor rasterafbeeldingen ondersteunt. Deze afbeelding slaat pixelgegevens op wanneer nodig.

public abstract class RasterCachedImage : RasterImage

Eigenschappen

NaamBeschrijving
AutoAdjustPalette { get; set; }Haalt of stelt een waarde in die aangeeft of het palet automatisch wordt aangepast.
virtual BackgroundColor { get; set; }Haalt of stelt een waarde in voor de achtergrondkleur.
abstract BitsPerPixel { get; }Haalt het aantal beeldbits per pixel op.
Bounds { get; }Haalt de afbeeldingsgrenzen op.
BufferSizeHint { get; set; }Haalt de hint voor de buffergrootte op of stelt deze in, de maximale toegestane grootte voor alle interne buffers.
Container { get; }Krijgt deImage container.
DataStreamContainer { get; }Haalt de gegevensstroom van het object op.
Disposed { get; }Krijgt een waarde die aangeeft of deze instantie is verwijderd.
virtual FileFormat { get; }Krijgt een waarde van bestandsformaat
virtual HasAlpha { get; }Krijgt een waarde die aangeeft of deze instantie alfa heeft.
virtual HasBackgroundColor { get; set; }Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de afbeelding een achtergrondkleur heeft.
virtual HasTransparentColor { get; set; }Krijgt een waarde die aangeeft of de afbeelding een transparante kleur heeft.
abstract Height { get; }Haalt de afbeeldingshoogte op.
virtual HorizontalResolution { get; set; }Haalt of stelt de horizontale resolutie, in pixels per inch, hiervan inRasterImage .
virtual ImageOpacity { get; }Krijgt dekking van deze afbeelding.
InterruptMonitor { get; set; }Haalt of stelt de interruptmonitor in.
override IsCached { get; }Krijgt een waarde die aangeeft of afbeeldingsgegevens momenteel in de cache zijn opgeslagen.
IsRawDataAvailable { get; }Krijgt een waarde die aangeeft of het laden van onbewerkte gegevens beschikbaar is.
Palette { get; set; }Haalt of stelt het kleurenpalet in. Het kleurenpalet wordt niet gebruikt wanneer pixels direct worden weergegeven.
virtual PremultiplyComponents { get; set; }Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de afbeeldingscomponenten vooraf moeten worden vermenigvuldigd.
RawCustomColorConverter { get; set; }Haalt de aangepaste kleuromzetter op of stelt deze in
virtual RawDataFormat { get; }Haalt het ruwe gegevensformaat op.
RawDataSettings { get; }Haalt de huidige instellingen voor onbewerkte gegevens op. Merk op dat wanneer u deze instellingen gebruikt, de gegevens worden geladen zonder conversie.
RawFallbackIndex { get; set; }Haalt de fallback-index op of stelt deze in om te gebruiken wanneer de paletindex buiten de grenzen ligt
RawIndexedColorConverter { get; set; }Haalt de geïndexeerde kleuromzetter op of stelt deze in
virtual RawLineSize { get; }Krijgt de onbewerkte regelgrootte in bytes.
Size { get; }Haalt de afbeeldingsgrootte op.
virtual TransparentColor { get; set; }Krijgt de transparante kleur van de afbeelding.
virtual UpdateXmpData { get; set; }Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de XMP-metagegevens moeten worden bijgewerkt.
virtual UseRawData { get; set; }Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het laden van onbewerkte gegevens moet worden gebruikt wanneer het laden van onbewerkte gegevens beschikbaar is.
virtual VerticalResolution { get; set; }Hiermee wordt de verticale resolutie, in pixels per inch, hiervan opgehaald of ingesteldRasterImage .
abstract Width { get; }Haalt de beeldbreedte op.
virtual XmpData { get; set; }Haalt de XMP-metadata op of stelt deze in.

methoden

NaamBeschrijving
override AdjustBrightness(int)Aanpassing van een helderheid voor afbeelding.
override AdjustContrast(float)Afbeelding contrasterend
override AdjustGamma(float)Gammacorrectie van een afbeelding.
override AdjustGamma(float, float, float)Gammacorrectie van een afbeelding.
override BinarizeBradley(double)Binarisatie van een afbeelding met behulp van Bradley’s adaptieve drempelwaarde-algoritme met behulp van de integrale afbeeldingsdrempelwaarde
override BinarizeBradley(double, int)Binarisatie van een afbeelding met behulp van Bradley’s adaptieve drempelwaarde-algoritme met behulp van de integrale afbeeldingsdrempelwaarde
override BinarizeFixed(byte)Binarisatie van een afbeelding met vooraf gedefinieerde drempel
override BinarizeOtsu()Binarisatie van een afbeelding met Otsu-drempels
override CacheData()Cache de gegevens op en zorgt ervoor dat er geen aanvullende gegevens worden geladen vanaf de onderliggende gegevensDataStreamContainer .
CanSave(ImageOptionsBase)Bepaalt of de afbeelding kan worden opgeslagen in de opgegeven bestandsindeling die wordt weergegeven door de doorgegeven opslagopties.
override Crop(Rectangle)De afbeelding bijsnijden.
virtual Crop(int, int, int, int)Afbeelding bijsnijden met verschuivingen.
Dispose()Verwijdert de huidige instantie.
Dither(DitheringMethod, int)Voert dithering uit op de huidige afbeelding.
override Dither(DitheringMethod, int, IColorPalette)Voert dithering uit op de huidige afbeelding.
virtual Filter(Rectangle, FilterOptionsBase)Filtert de opgegeven rechthoek.
GetArgb32Pixel(int, int)Krijgt een afbeelding 32-bits ARGB-pixel.
GetDefaultArgb32Pixels(Rectangle)Hiermee krijgt u de standaard 32-bits ARGB-pixelarray.
virtual GetDefaultOptions(object[])Krijgt de standaardopties.
GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader)Haalt de standaard pixelarray op met gedeeltelijke pixellader.
GetDefaultRawData(Rectangle, RawDataSettings)Haalt de standaard onbewerkte gegevensarray op.
GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings)Haalt de standaard onbewerkte gegevensarray op met behulp van een gedeeltelijke pixellader.
virtual GetModifyDate(bool)Haalt de datum en tijd op waarop de bronafbeelding voor het laatst is gewijzigd.
virtual GetOriginalOptions()Krijgt de opties op basis van de originele bestandsinstellingen. Dit kan handig zijn om de bitdiepte en andere parameters van de originele afbeelding ongewijzigd te laten. Als we bijvoorbeeld een zwart-wit PNG-afbeelding laden met 1 bit per pixel en sla het op met the Save methode, wordt de uitgevoerde PNG-afbeelding met 8-bits per pixel geproduceerd. Om dit te voorkomen en PNG-afbeelding met 1-bits per pixel op te slaan, gebruikt u deze methode om overeenkomstige opslagopties te krijgen en deze door te geven aan deSavemethode als de tweede parameter.
GetPixel(int, int)Krijgt een beeldpixel.
GetSkewAngle()Hiermee wordt de schuine hoek bepaald. Deze methode is van toepassing op gescande tekstdocumenten, om de schuine hoek tijdens het scannen te bepalen.
override Grayscale()Transformatie van een afbeelding naar zijn grijswaardenweergave
LoadArgb32Pixels(Rectangle)Laadt 32-bits ARGB-pixels.
LoadArgb64Pixels(Rectangle)Laadt 64-bits ARGB-pixels.
LoadCmyk32Pixels(Rectangle)Laadt pixels in CMYK-formaat.
LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader)Laadt 32-bits ARGB-pixels gedeeltelijk per pakket.
LoadPartialPixels(Rectangle, IPartialPixelLoader)Laadt pixels gedeeltelijk per pakket.
LoadPixels(Rectangle)Laadt pixels.
LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader)Laadt onbewerkte gegevens.
LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader)Laadt onbewerkte gegevens.
NormalizeAngle()Normaliseert de hoek. Deze methode is van toepassing op gescande tekstdocumenten om de scheve scan te verwijderen. Deze methode gebruiktGetSkewAngle EnRotate methoden.
virtual NormalizeAngle(bool, Color)Normaliseert de hoek. Deze methode is van toepassing op gescande tekstdocumenten om de scheve scan te verwijderen. Deze methode gebruiktGetSkewAngle EnRotate methoden.
ReadArgb32ScanLine(int)Leest de hele scanlijn volgens de opgegeven scanlijnindex.
ReadScanLine(int)Leest de hele scanlijn volgens de opgegeven scanlijnindex.
ReplaceColor(Color, byte, Color)Vervangt de ene kleur door de andere met toegestaan verschil en behoudt de oorspronkelijke alfawaarde om vloeiende randen te voorkomen.
virtual ReplaceColor(int, byte, int)Vervangt de ene kleur door de andere met toegestaan verschil en behoudt de oorspronkelijke alfawaarde om vloeiende randen te voorkomen.
ReplaceNonTransparentColors(Color)Vervangt alle niet-transparante kleuren door nieuwe kleuren en behoudt de oorspronkelijke alfawaarde om vloeiende randen te besparen. Opmerking: als u het gebruikt op afbeeldingen zonder transparantie, worden alle kleuren vervangen door een enkele kleur.
virtual ReplaceNonTransparentColors(int)Vervangt alle niet-transparante kleuren door nieuwe kleuren en behoudt de oorspronkelijke alfawaarde om vloeiende randen te besparen. Opmerking: als u het gebruikt op afbeeldingen zonder transparantie, worden alle kleuren vervangen door een enkele kleur.
Resize(int, int)Wijzigt de grootte van de afbeelding. De standaardLeftTopToLeftTopwordt gebruikt.
override Resize(int, int, ImageResizeSettings)Pas de grootte van de afbeelding aan.
override Resize(int, int, ResizeType)Pas de grootte van de afbeelding aan.
ResizeHeightProportionally(int)Pas de hoogte proportioneel aan.
virtual ResizeHeightProportionally(int, ImageResizeSettings)Pas de hoogte proportioneel aan.
virtual ResizeHeightProportionally(int, ResizeType)Pas de hoogte proportioneel aan.
ResizeWidthProportionally(int)Pas de breedte proportioneel aan.
virtual ResizeWidthProportionally(int, ImageResizeSettings)Pas de breedte proportioneel aan.
virtual ResizeWidthProportionally(int, ResizeType)Pas de breedte proportioneel aan.
virtual Rotate(float)Afbeelding roteren rond het midden.
override Rotate(float, bool, Color)Afbeelding roteren rond het midden.
override RotateFlip(RotateFlipType)Roteert, spiegelt of roteert en spiegelt de afbeelding.
Save()Slaat de afbeeldingsgegevens op in de onderliggende stream.
virtual Save(Stream)Slaat de gegevens van het object op in de opgegeven stream.
Save(string)Slaat de objectgegevens op naar de opgegeven bestandslocatie.
Save(Stream, ImageOptionsBase)Slaat de afbeeldingsgegevens op in de opgegeven stream in de opgegeven bestandsindeling volgens de opslagopties.
virtual Save(string, bool)Slaat de objectgegevens op naar de opgegeven bestandslocatie.
virtual Save(string, ImageOptionsBase)Slaat de objectgegevens op naar de opgegeven bestandslocatie in de opgegeven bestandsindeling volgens de opslagopties.
override Save(Stream, ImageOptionsBase, Rectangle)Slaat de afbeeldingsgegevens op in de opgegeven stream in de opgegeven bestandsindeling volgens de opslagopties.
virtual Save(string, ImageOptionsBase, Rectangle)Slaat de objectgegevens op naar de opgegeven bestandslocatie in de opgegeven bestandsindeling volgens de opslagopties.
SaveArgb32Pixels(Rectangle, int[])Slaat de 32-bits ARGB-pixels op.
SaveCmyk32Pixels(Rectangle, int[])Slaat de pixels op.
SavePixels(Rectangle, Color[])Slaat de pixels op.
SaveRawData(byte[], int, Rectangle, RawDataSettings)Slaat de onbewerkte gegevens op.
SetArgb32Pixel(int, int, int)Stelt een afbeelding 32-bits ARGB-pixel in voor de opgegeven positie.
override SetPalette(IColorPalette, bool)Stelt het afbeeldingspalet in.
SetPixel(int, int, Color)Stelt een afbeeldingspixel in voor de opgegeven positie.
virtual SetResolution(double, double)Stelt de resolutie hiervoor inRasterImage .
virtual ToBitmap()Converteert rasterafbeelding naar de bitmap.
WriteArgb32ScanLine(int, int[])Schrijft de hele scanlijn naar de opgegeven scanlijnindex.
WriteScanLine(int, Color[])Schrijft de hele scanlijn naar de opgegeven scanlijnindex.

Voorbeelden

De volgende code demonstreert de mogelijkheid om de afbeelding bij te snijden op een specifieke rechthoek.

[C#]

string sourceFileName = "SourceFile.psd";
string exportPath = "SourceFileEdited.psd";
string exportPathPng = "SourceFileEdited.png";

using (var image = (PsdImage)Image.Load(sourceFileName))
{
    var oldLayer = image.Layers[0];
    var oldBounds = oldLayer.Bounds;

    var oldLayerData = image.Layers[0].LoadArgb32Pixels(oldBounds);

    var layers = new Layer[4];
    for (int i = 0; i < 4; i++)
    {
        layers[i] = new Layer(
            oldBounds,
            new byte[oldBounds.Width * oldBounds.Height],
            new byte[oldBounds.Width * oldBounds.Height],
            new byte[oldBounds.Width * oldBounds.Height],
            "Layer " + i.ToString());
        layers[i].SaveArgb32Pixels(oldBounds, oldLayerData);
    }

    image.Resize(186, 602);

    layers[0].Crop(new Rectangle(0, 0, 186, 159));
    layers[1].Crop(new Rectangle(186, 0, 186, 159));
    layers[2].Crop(new Rectangle(0, 159, 186, 142));
    layers[3].Crop(new Rectangle(186, 159, 186, 142));

    oldLayer.Dispose();
    image.Layers = layers;

    var top = 0;
    for (int i = 0; i < 4; i++)
    {
        var width = layers[i].Width;
        var height = layers[i].Height;
        layers[i].Left = 0;
        layers[i].Top = top;
        layers[i].Right = width;
        layers[i].Bottom = height + layers[i].Top;
        top += layers[i].Height;
    }

    // Bewaar psd
    image.Save(exportPath, new PsdOptions());

    // Bewaar png
    image.Save(exportPathPng, new PngOptions());
}

Zie ook