RasterCachedImage

Inheritance: java.lang.Object, com.aspose.imaging.DisposableObject, com.aspose.imaging.DataStreamSupporter, com.aspose.imaging.Image, com.aspose.imaging.RasterImage

public abstract class RasterCachedImage extends RasterImage

Stellt ein Rasterbild dar, das Rastergrafik-Operationen unterstützt. Dieses Bild speichert Pixeldaten bei Bedarf im Cache.

Methoden

MethodeBeschreibung
isCached()Gibt einen Wert zurück, der angibt, ob Bilddaten derzeit im Cache sind.
cacheData()Zwischenspeichert die Daten und stellt sicher, dass keine zusätzlichen Datenladungen vom zugrunde liegenden DataStreamSupporter.DataStreamContainer durchgeführt werden.
blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha)Mischt diese Bildinstanz mit dem overlay-Bild.
resize(int newWidth, int newHeight, int resizeType)Ändert die Größe des Bildes.
resize(int newWidth, int newHeight, ImageResizeSettings settings)Ändert die Größe des Bildes.
rotateFlip(int rotateFlipType)Dreht, spiegelt oder dreht und spiegelt das Bild.
rotate(float angle, boolean resizeProportionally, Color backgroundColor)Bild um die Mitte drehen.
crop(Rectangle rectangle)Zuschneiden des Bildes.
dither(int ditheringMethod, int bitsCount, IColorPalette customPalette)Führt Dithering auf dem aktuellen Bild aus.
grayscale()Transformation eines Bildes in seine Graustufen-Darstellung
normalizeHistogram()Normalisiert das Bildhistogramm \u2014 passt Pixelwerte an, um den gesamten verfügbaren Bereich zu nutzen.
autoBrightnessContrast()Führt eine automatische adaptive Helligkeits- und Kontrastnormalisierung für das gesamte Bild durch.
binarizeFixed(byte threshold)Binarisierung eines Bildes mit vordefiniertem Schwellenwert
binarizeOtsu()Binarisierung eines Bildes mit Otsu-Schwellenwertbestimmung
binarizeBradley(double brightnessDifference, int windowSize)Binarisierung eines Bildes mittels Bradleys adaptivem Schwellenwertalgorithmus unter Verwendung der Integralbild-Schwellenwertbestimmung
binarizeBradley(double brightnessDifference)Binarisierung eines Bildes mittels Bradleys adaptivem Schwellenwertalgorithmus unter Verwendung der Integralbild-Schwellenwertbestimmung
adjustBrightness(int brightness)Anpassung der Helligkeit des Bildes.
adjustContrast(float contrast)Bildkontrastierung
adjustGamma(float gammaRed, float gammaGreen, float gammaBlue)Gammakorrektur eines Bildes.
adjustGamma(float gamma)Gammakorrektur eines Bildes.
embedDigitalSignature(String password)Betten Sie ein digitales Signatur basierend auf dem bereitgestellten Passwort in das Bild ein, mittels Steganographie.
analyzePercentageDigitalSignature(String password)Berechnet den prozentualen Ähnlichkeitswert zwischen den extrahierten Daten und dem ursprünglichen Passwort.
isDigitalSigned(String password, int percentageThreshold)Führt eine schnelle Prüfung durch, um festzustellen, ob das Bild digital signiert ist, unter Verwendung des bereitgestellten Passworts und Schwellenwerts.

Example: The following example transforms a colored raster cached image to its grayscale representation.

Das folgende Beispiel wandelt ein farbiges, rasterbasiertes, zwischengespeichertes Bild in seine Graustufen-Darstellung um. Graustufenbilder bestehen ausschließlich aus Grautönen und enthalten nur Intensitätsinformationen.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    rasterImage.grayscale();
    rasterImage.save(dir + "sample.Grayscale.png");
} finally {
    image.dispose();
}

isCached()

public boolean isCached()

Gibt einen Wert zurück, der angibt, ob Bilddaten derzeit im Cache sind.

Returns: boolesch - true wenn Bilddaten zwischengespeichert sind; andernfalls false.

cacheData()

public void cacheData()

Zwischenspeichert die Daten und stellt sicher, dass keine zusätzlichen Datenladungen vom zugrunde liegenden DataStreamSupporter.DataStreamContainer durchgeführt werden.

Example: The following example shows how raster image caching affects performance. Das folgende Beispiel zeigt, wie das Zwischenspeichern von Rasterbildern die Leistung beeinflusst. Im Allgemeinen wird das Lesen zwischengespeicherter Daten schneller durchgeführt als das Lesen nicht zwischengespeicherter Daten.

String dir = "c:\\temp\\";

// Laden Sie ein Bild aus einer PNG-Datei.
com.aspose.imaging.RasterCachedImage image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Speichern Sie alle Pixeldaten im Cache, sodass keine zusätzlichen Datenladungen vom zugrunde liegenden Datenstrom durchgeführt werden.
    image.cacheData();

    long startTime = System.currentTimeMillis();

    // Das Lesen aller Pixel ist ziemlich schnell.
    for (int y = 0; y < image.getHeight(); y++) {
        for (int x = 0; x < image.getWidth(); x++) {
            int color = image.getArgb32Pixel(x, y);
        }
    }

    long stopTime = System.currentTimeMillis();
    long elapsedMilliseconds = stopTime - startTime;
    System.out.println("Reading all cached pixels took " + elapsedMilliseconds + " ms.");
} finally {
    image.dispose();
}

// Lade ein Bild aus einer PNG-Datei
image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    long startTime = System.currentTimeMillis();

    // Das Lesen aller Pixel ist nicht so schnell wie beim Caching.
    for (int y = 0; y < image.getHeight(); y++) {
        for (int x = 0; x < image.getWidth(); x++) {
            int color = image.getArgb32Pixel(x, y);
        }
    }

    long stopTime = System.currentTimeMillis();
    long elapsedMilliseconds = stopTime - startTime;
    System.out.println("Reading all pixels without preliminary caching took " + elapsedMilliseconds + " ms.");
} finally {
    image.dispose();
}

// Die Ausgabe könnte so aussehen:
//Das Lesen aller zwischengespeicherten Pixel dauerte 2923 ms.
//    java.lang.OutOfMemoryError
//at com.aspose.imaging.internal.G.be.b(Unknown Source)
//at com.aspose.imaging.internal.G.be.a(Unknown Source)
//at com.aspose.imaging.internal.G.be.a(Unknown Source)
//at com.aspose.imaging.internal.G.be.a(Unknown Source)
//at com.aspose.imaging.internal.G.aB.a(Unknown Source)
//at com.aspose.imaging.RasterImage.a(Unknown Source)
//at com.aspose.imaging.RasterImage.getArgb32Pixel(Unknown Source)
//at com.aspose.examples.ExamplesTest.Test(ExamplesTest.java:54)

blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha)

public void blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha)

Mischt diese Bildinstanz mit dem overlay-Bild.

Parameters:

ParameterTypBeschreibung
originPointDer Ursprung der Hintergrundbildüberblendung.
overlayRasterImageDas Überlagerungsbild.
overlayAreaRectangleDer Überlagerungsbereich.
overlayAlphabyteDer Overlay‑Alpha.

resize(int newWidth, int newHeight, int resizeType)

public void resize(int newWidth, int newHeight, int resizeType)

Ändert die Größe des Bildes.

Parameters:

ParameterTypBeschreibung
newWidthintDie neue Breite.
newHeightintDie neue Höhe.
resizeTypeintDer Skalierungstyp.

Example: This example loads a raster cached image and resizes it using various resizing methods.

String dir = "c:\\temp\\";

com.aspose.imaging.RasterCachedImage image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Vergrößern um das 2‑fache mit Nearest‑Neighbour‑Resampling.
    image.resize(image.getWidth() * 2, image.getHeight() * 2, com.aspose.imaging.ResizeType.NearestNeighbourResample);

    // Als PNG mit Standardoptionen speichern.
    image.save(dir + "upsample.nearestneighbour.png", new com.aspose.imaging.imageoptions.PngOptions());
} finally {
    image.dispose();
}

image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Verkleinern um das 2‑fache mit Nearest‑Neighbour‑Resampling.
    image.resize(image.getWidth() / 2, image.getHeight() / 2, com.aspose.imaging.ResizeType.NearestNeighbourResample);

    // Als PNG mit Standardoptionen speichern.
    image.save(dir + "downsample.nearestneighbour.png", new com.aspose.imaging.imageoptions.PngOptions());
} finally {
    image.dispose();
}

image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Vergrößern um das 2‑fache mit bilinearer Resampling.
    image.resize(image.getWidth() * 2, image.getHeight() * 2, com.aspose.imaging.ResizeType.BilinearResample);

    // Als PNG mit Standardoptionen speichern.
    image.save(dir + "upsample.bilinear.png", new com.aspose.imaging.imageoptions.PngOptions());
} finally {
    image.dispose();
}

image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Verkleinern um das 2‑fache mit bilinearer Resampling.
    image.resize(image.getWidth() / 2, image.getHeight() / 2, com.aspose.imaging.ResizeType.BilinearResample);

    // Als PNG mit Standardoptionen speichern.
    image.save(dir + "downsample.bilinear.png", new com.aspose.imaging.imageoptions.PngOptions());
} finally {
    image.dispose();
}

resize(int newWidth, int newHeight, ImageResizeSettings settings)

public void resize(int newWidth, int newHeight, ImageResizeSettings settings)

Ändert die Größe des Bildes.

Parameters:

ParameterTypBeschreibung
newWidthintDie neue Breite.
newHeightintDie neue Höhe.
settingsImageResizeSettingsDie Skalierungseinstellungen.

Example: This example loads a raster cached image and resizes it using various resizing settings.

String dir = "c:\\temp\\";

com.aspose.imaging.ImageResizeSettings resizeSettings = new com.aspose.imaging.ImageResizeSettings();

// Der adaptive Algorithmus basierend auf gewichteter und gemischter rationaler Funktion sowie Lanczos‑3‑Interpolation.
resizeSettings.setMode(com.aspose.imaging.ResizeType.AdaptiveResample);

// Der kleine rechteckige Filter
resizeSettings.setFilterType(com.aspose.imaging.ImageFilterType.SmallRectangular);

// Die Anzahl der Farben in der Palette.
resizeSettings.setEntriesCount(256);

// Die Farbquantisierung wird nicht verwendet
resizeSettings.setColorQuantizationMethod(com.aspose.imaging.ColorQuantizationMethod.None);

// Die euklidische Methode
resizeSettings.setColorCompareMethod(com.aspose.imaging.ColorCompareMethod.Euclidian);

com.aspose.imaging.RasterCachedImage image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.png");
try {
    // Verkleinern Sie um das 2‑fache mittels adaptiver Resampling.
    image.resize(image.getWidth() / 2, image.getHeight() / 2, resizeSettings);
    image.save(dir + "downsample.adaptive.png", new com.aspose.imaging.imageoptions.PngOptions());
} finally {
    image.dispose();
}

rotateFlip(int rotateFlipType)

public void rotateFlip(int rotateFlipType)

Dreht, spiegelt oder dreht und spiegelt das Bild.

Parameters:

ParameterTypBeschreibung
rotateFlipTypeintDer Rotations‑Flip‑Typ.

Example: This example loads a raster cached image, rotates it by 90 degrees clockwise and optionally flips the image horizontally and(or) vertically.

String dir = "c:\\temp\\";

// Dies ist eine Hilfsklasse.
class LocalHelper {
    // Gibt eine Zeichenkettenrepräsentation des Rotations‑Flip‑Typs zurück.
    public String rotateFlipTypeToString(int rotateFilpType) {
        switch (rotateFilpType) {
            case com.aspose.imaging.RotateFlipType.RotateNoneFlipNone:
                return "RotateNoneFlipNone";
            case com.aspose.imaging.RotateFlipType.Rotate90FlipNone:
                return "Rotate90FlipNone";
            case com.aspose.imaging.RotateFlipType.Rotate180FlipNone:
                return "Rotate180FlipNone";
            case com.aspose.imaging.RotateFlipType.Rotate270FlipNone:
                return "Rotate270FlipNone";
            case com.aspose.imaging.RotateFlipType.RotateNoneFlipX:
                return "RotateNoneFlipX";
            case com.aspose.imaging.RotateFlipType.Rotate90FlipX:
                return "Rotate90FlipX";
            case com.aspose.imaging.RotateFlipType.Rotate180FlipX:
                return "Rotate180FlipX";
            case com.aspose.imaging.RotateFlipType.Rotate270FlipX:
                return "Rotate270FlipX";
            case com.aspose.imaging.RotateFlipType.RotateNoneFlipY:
                return "RotateNoneFlipY";
            case com.aspose.imaging.RotateFlipType.Rotate90FlipY:
                return "Rotate90FlipY";
            case com.aspose.imaging.RotateFlipType.Rotate180FlipY:
                return "Rotate180FlipY";
            case com.aspose.imaging.RotateFlipType.Rotate270FlipY:
                return "Rotate270FlipY";
            case com.aspose.imaging.RotateFlipType.RotateNoneFlipXY:
                return "RotateNoneFlipXY";
            case com.aspose.imaging.RotateFlipType.Rotate90FlipXY:
                return "Rotate90FlipXY";
            case com.aspose.imaging.RotateFlipType.Rotate180FlipXY:
                return "Rotate180FlipXY";
            case com.aspose.imaging.RotateFlipType.Rotate270FlipXY:
                return "Rotate270FlipXY";
            default:
                throw new java.lang.IllegalArgumentException("rotateFlipType");
        }
    }
}

// Hier ist das Hauptbeispiel.
int[] rotateFlipTypes = new int[]
        {
                com.aspose.imaging.RotateFlipType.Rotate90FlipNone,
                com.aspose.imaging.RotateFlipType.Rotate90FlipX,
                com.aspose.imaging.RotateFlipType.Rotate90FlipXY,
                com.aspose.imaging.RotateFlipType.Rotate90FlipY,
        };

LocalHelper localHelper = new LocalHelper();
for (int rotateFlipType : rotateFlipTypes) {
    // Drehen, spiegeln und in die Ausgabedatei speichern.
    com.aspose.imaging.RasterCachedImage image = (com.aspose.imaging.RasterCachedImage) com.aspose.imaging.Image.load(dir + "sample.bmp");
    try {
        image.rotateFlip(rotateFlipType);
        image.save(dir + "sample." + localHelper.rotateFlipTypeToString(rotateFlipType) + ".bmp");
    } finally {
        image.dispose();
    }
}

rotate(float angle, boolean resizeProportionally, Color backgroundColor)

public void rotate(float angle, boolean resizeProportionally, Color backgroundColor)

Bild um die Mitte drehen.

Parameters:

ParameterTypBeschreibung
anglefloatDer Rotationswinkel in Grad. Positive Werte drehen im Uhrzeigersinn.
resizeProportionallybooleanWenn auf true gesetzt, wird die Bildgröße gemäß den Projektionen des rotierten Rechtecks (Eckpunkte) geändert; andernfalls bleiben die Abmessungen unverändert und nur der interne Bildinhalt wird rotiert.
backgroundColorColorFarbe des Hintergrunds.

crop(Rectangle rectangle)

public void crop(Rectangle rectangle)

Zuschneiden des Bildes.

Parameters:

ParameterTypBeschreibung
rectangleRectangleDas Rechteck.

Example: The following example crops a raster cached image. Das folgende Beispiel schneidet ein rastergecachedes Bild zu. Der Zuschnittsbereich wird über com.aspose.imaging.Rectangle angegeben.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Schneiden Sie das Bild zu. Der Zuschnittsbereich ist der rechteckige zentrale Bereich des Bildes.
    int width = rasterImage.getWidth();
    int height = rasterImage.getHeight();
    com.aspose.imaging.Rectangle area = new com.aspose.imaging.Rectangle(width / 4, height / 4, width / 2, height / 2);
    rasterImage.crop(area);

    // Speichern Sie das zugeschnittene Bild als PNG
    rasterImage.save(dir + "sample.Crop.png");
} finally {
    image.dispose();
}

dither(int ditheringMethod, int bitsCount, IColorPalette customPalette)

public void dither(int ditheringMethod, int bitsCount, IColorPalette customPalette)

Führt Dithering auf dem aktuellen Bild aus.

Parameters:

ParameterTypBeschreibung
ditheringMethodintDie Dithering-Methode.
bitsCountintDie endgültige Bitanzahl für Dithering.
customPaletteIColorPaletteDie benutzerdefinierte Palette für Dithering.

grayscale()

public void grayscale()

Transformation eines Bildes in seine Graustufen-Darstellung

Example: The following example transforms a colored raster cached image to its grayscale representation. Das folgende Beispiel wandelt ein farbiges, rasterbasiertes, zwischengespeichertes Bild in seine Graustufen-Darstellung um. Graustufenbilder bestehen ausschließlich aus Grautönen und enthalten nur Intensitätsinformationen.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    rasterImage.grayscale();
    rasterImage.save(dir + "sample.Grayscale.png");
} finally {
    image.dispose();
}

normalizeHistogram()

public void normalizeHistogram()

Normalisiert das Bildhistogramm \u2014 passt Pixelwerte an, um den gesamten verfügbaren Bereich zu nutzen.

autoBrightnessContrast()

public void autoBrightnessContrast()

Führt eine automatische adaptive Helligkeits- und Kontrastnormalisierung für das gesamte Bild durch.


// Example usage in image pre-processing:
 image.AutoBrightnessContrast();

Diese Methode wendet eine Pipeline fortschrittlicher adaptiver Filter (CLAHE, Adaptive White Stretch und Auto White Balance) an, um die Bildqualität zu verbessern, indem Kontrast, lokale Helligkeit und Farbtreue erhöht werden.

**Filter pipeline:**

  1. Contrast-Limited Adaptive Histogram Equalization (CLAHE) \u2013 verbessert den lokalen Kontrast und verstärkt feine Details.
  2. Adaptive White Stretch \u2013 erhöht das effektive Weißniveau, während dunkle Merkmale geschützt werden.
  3. Auto White Balance \u2013 korrigiert Farbstiche, indem Kanalhistogramme ausgeglichen werden.

**Note:**

binarizeFixed(byte threshold)

public void binarizeFixed(byte threshold)

Binarisierung eines Bildes mit vordefiniertem Schwellenwert

Parameters:

ParameterTypBeschreibung
thresholdbyteSchwellenwert. Wenn der entsprechende Grauwert eines Pixels größer als der Schwellenwert ist, wird ihm der Wert 255 zugewiesen, andernfalls 0.

Example: The following example binarizes a raster cached image with the predefined threshold. Das folgende Beispiel binarisiert ein rastergecachedes Bild mit dem vordefinierten Schwellenwert. Binarisierte Bilder enthalten nur 2 Farben – schwarz und weiß.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Binarisieren Sie das Bild mit einem Schwellenwert von 127.
    // Wenn der entsprechende Grauwert eines Pixels größer als 127 ist, wird ihm der Wert 255 zugewiesen, sonst 0.
    rasterImage.binarizeFixed((byte) 127);
    rasterImage.save(dir + "sample.BinarizeFixed.png");
} finally {
    image.dispose();
}

binarizeOtsu()

public void binarizeOtsu()

Binarisierung eines Bildes mit Otsu-Schwellenwertbestimmung

Example: The following example binarizes a raster cached image with Otsu thresholding. Das folgende Beispiel binarisiert ein rasterzwischengespeichertes Bild mit Otsu‑Schwellenwertverfahren. Binärbilder enthalten nur 2 Farben – schwarz und weiß.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Binarisieren Sie das Bild mit Otsu‑Schwellenwertverfahren.
    rasterImage.binarizeOtsu();
    rasterImage.save(dir + "sample.BinarizeOtsu.png");
} finally {
    image.dispose();
}

binarizeBradley(double brightnessDifference, int windowSize)

public void binarizeBradley(double brightnessDifference, int windowSize)

Binarisierung eines Bildes mittels Bradleys adaptivem Schwellenwertalgorithmus unter Verwendung der Integralbild-Schwellenwertbestimmung

Parameters:

ParameterTypBeschreibung
brightnessDifferencedoubleDer Helligkeitsunterschied zwischen dem Pixel und dem Durchschnitt eines s × s‑Fensters von Pixeln, das um dieses Pixel zentriert ist.
windowSizeintDie Größe des s × s‑Fensters von Pixeln, das um dieses Pixel zentriert ist.

Example: The following example binarizes a raster cached image with Bradley’s adaptive thresholding algorithm with the specified window size. Das folgende Beispiel binarisiert ein rasterzwischengespeichertes Bild mit Bradleys adaptivem Schwellenwertalgorithmus unter Verwendung der angegebenen Fenstergröße. Binärbilder enthalten nur 2 Farben – schwarz und weiß.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Binarisieren Sie das Bild mit einem Helligkeitsunterschied von 5.
    // Die Helligkeit ist ein Unterschied zwischen einem Pixel und dem Durchschnitt eines 10 × 10‑Fensters von Pixeln, das um dieses Pixel zentriert ist.
    rasterImage.binarizeBradley(5, 10);
    rasterImage.save(dir + "sample.BinarizeBradley5_10x10.png");
} finally {
    image.dispose();
}

binarizeBradley(double brightnessDifference)

public void binarizeBradley(double brightnessDifference)

Binarisierung eines Bildes mittels Bradleys adaptivem Schwellenwertalgorithmus unter Verwendung der Integralbild-Schwellenwertbestimmung

Parameters:

ParameterTypBeschreibung
brightnessDifferencedoubleDer Helligkeitsunterschied zwischen dem Pixel und dem Durchschnitt eines s × s‑Fensters von Pixeln, das um dieses Pixel zentriert ist.

Example: The following example binarizes a raster cached image with Bradley’s adaptive thresholding algorithm. Das folgende Beispiel binarisiert ein rasterzwischengespeichertes Bild mit Bradleys adaptivem Schwellenwertalgorithmus. Binärbilder enthalten nur 2 Farben – schwarz und weiß.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Binarisieren Sie das Bild mit einem Helligkeitsunterschied von 5.
    // Die Helligkeit ist ein Unterschied zwischen einem Pixel und dem Durchschnitt eines s × s‑Fensters von Pixeln, das um dieses Pixel zentriert ist.
    // Die Fenstergröße wird automatisch kalibriert.
    rasterImage.binarizeBradley(5);
    rasterImage.save(dir + "sample.BinarizeBradley5.png");
} finally {
    image.dispose();
}

adjustBrightness(int brightness)

public void adjustBrightness(int brightness)

Anpassung der Helligkeit des Bildes.

Parameters:

ParameterTypBeschreibung
brightnessintHelligkeitswert.

Example: The following example performs brightness correction of a raster cached image.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Legen Sie den Helligkeitswert fest. Die zulässigen Helligkeitswerte liegen im Bereich [-255, 255].
    rasterImage.adjustBrightness(50);
    rasterImage.save(dir + "sample.AdjustBrightness.png");
} finally {
    image.dispose();
}

adjustContrast(float contrast)

public void adjustContrast(float contrast)

Bildkontrastierung

Parameters:

ParameterTypBeschreibung
contrastfloatKontrastwert (im Bereich [-100; 100])

Example: The following example performs contrast correction of a raster cached image.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Legen Sie den Kontrastwert fest. Die zulässigen Kontrastwerte liegen im Bereich [-100f, 100f].
    rasterImage.adjustContrast(50);
    rasterImage.save(dir + "sample.AdjustContrast.png");
} finally {
    image.dispose();
}

adjustGamma(float gammaRed, float gammaGreen, float gammaBlue)

public void adjustGamma(float gammaRed, float gammaGreen, float gammaBlue)

Gammakorrektur eines Bildes.

Parameters:

ParameterTypBeschreibung
gammaRedfloatGamma‑Koeffizient für den Rotkanal
gammaGreenfloatGamma‑Koeffizient für den Grünkanal
gammaBluefloatGamma für den Blaukanal-Koeffizienten

Example: The following example performs gamma-correction of a raster cached image applying different coefficients for color components.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Setzen Sie individuelle Gamma-Koeffizienten für die Rot-, Grün- und Blaukanäle.
    rasterImage.adjustGamma(1.5f, 2.5f, 3.5f);
    rasterImage.save(dir + "sample.AdjustGamma.png");
} finally {
    image.dispose();
}

adjustGamma(float gamma)

public void adjustGamma(float gamma)

Gammakorrektur eines Bildes.

Parameters:

ParameterTypBeschreibung
GammafloatGamma für Rot-, Grün- und Blaukanäle-Koeffizient

Example: The following example performs gamma-correction of a raster cached image.

String dir = "c:\\temp\\";

com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
    com.aspose.imaging.RasterCachedImage rasterImage = (com.aspose.imaging.RasterCachedImage) image;

    // Setzen Sie den Gamma-Koeffizienten für Rot-, Grün- und Blaukanäle.
    rasterImage.adjustGamma(2.5f);
    rasterImage.save(dir + "sample.AdjustGamma.png");
} finally {
    image.dispose();
}

embedDigitalSignature(String password)

public void embedDigitalSignature(String password)

Betten Sie ein digitales Signatur basierend auf dem bereitgestellten Passwort in das Bild ein, mittels Steganographie.

Parameters:

ParameterTypBeschreibung
Passwortjava.lang.StringDas Passwort, das zum Erzeugen digitaler Signaturdaten verwendet wird

Example: The example shows how to embed digital signature based on provided password into image pixel data.

String imageFilePath = "ball.png";
String password = "veryStr0ngPassword";
try (Image image = Image.load(imageFilePath))
{
    image.embedDigitalSignature(password);
    image.save(outputPath);
}

analyzePercentageDigitalSignature(String password)

public int analyzePercentageDigitalSignature(String password)

Berechnet den prozentualen Ähnlichkeitswert zwischen den extrahierten Daten und dem ursprünglichen Passwort.

Parameters:

ParameterTypBeschreibung
Passwortjava.lang.StringDas Passwort, das zum Extrahieren der eingebetteten Daten verwendet wird.

Returns: int – Der prozentuale Ähnlichkeitswert.

isDigitalSigned(String password, int percentageThreshold)

public boolean isDigitalSigned(String password, int percentageThreshold)

Führt eine schnelle Prüfung durch, um festzustellen, ob das Bild digital signiert ist, unter Verwendung des bereitgestellten Passworts und Schwellenwerts.


Diese Methode bietet die schnellste Erkennung, indem sie GetSignPercentage nutzt. Sobald die extrahierten Daten den angegebenen Schwellenwert erreichen, werden weitere Extraktionsschritte zur Verbesserung der Erkennungsgenauigkeit übersprungen.

Parameters:

ParameterTypBeschreibung
Passwortjava.lang.StringDas Passwort, um die Signatur zu prüfen.
percentageThresholdintDer Schwellenwert (in Prozent)[0-100], der bestimmt, ob das Bild als signiert gilt. Wenn nicht angegeben, wird ein Standardschwellenwert (75) verwendet.

Returns: boolean – Wahr, wenn das Bild signiert ist, sonst falsch.