RasterImage
Inheritance: java.lang.Object, com.aspose.imaging.DisposableObject, com.aspose.imaging.DataStreamSupporter, com.aspose.imaging.Image
All Implemented Interfaces: com.aspose.imaging.IRasterImageArgb32PixelLoader, com.aspose.internal.IPixelsSaver, com.aspose.imaging.xmp.IHasXmpData
public abstract class RasterImage extends Image implements IRasterImageArgb32PixelLoader, IPixelsSaver, IHasXmpData
Représente une image raster prenant en charge les opérations graphiques raster.
Méthodes
| Méthode | Description |
|---|---|
| getPremultiplyComponents() | Obtient ou définit une valeur indiquant si les composants de l’image doivent être prémultipliés. |
| setPremultiplyComponents(boolean value) | Obtient ou définit une valeur indiquant si les composants de l’image doivent être prémultipliés. |
| getUseRawData() | Obtient ou définit une valeur indiquant s’il faut utiliser le chargement de données brutes lorsque le chargement de données brutes est disponible. |
| setUseRawData(boolean value) | Obtient ou définit une valeur indiquant s’il faut utiliser le chargement de données brutes lorsque le chargement de données brutes est disponible. |
| getUpdateXmpData() | Obtient ou définit une valeur indiquant s’il faut mettre à jour les métadonnées XMP. |
| setUpdateXmpData(boolean value) | Obtient ou définit une valeur indiquant s’il faut mettre à jour les métadonnées XMP. |
| getRawIndexedColorConverter() | Obtient ou définit le convertisseur de couleur indexée |
| setRawIndexedColorConverter(IIndexedColorConverter value) | Obtient ou définit le convertisseur de couleur indexée |
| getRawCustomColorConverter() | Obtient ou définit le convertisseur de couleur personnalisé |
| setRawCustomColorConverter(IColorConverter value) | Obtient ou définit le convertisseur de couleur personnalisé |
| getRawFallbackIndex() | Obtient ou définit l’index de secours à utiliser lorsque l’index de palette est hors limites |
| setRawFallbackIndex(int value) | Obtient ou définit l’index de secours à utiliser lorsque l’index de palette est hors limites |
| getRawDataSettings() | |
| isUsePalette() | Obtient une valeur indiquant si la palette de l’image est utilisée. |
| getRawDataFormat() | Obtient le format des données brutes. |
| getRawLineSize() | Obtient la taille de ligne brute en octets. |
| isRawDataAvailable() | Obtient une valeur indiquant si le chargement de données brutes est disponible. |
| getHorizontalResolution() | Obtient ou définit la résolution horizontale, en pixels par pouce, de ce RasterImage. |
| setHorizontalResolution(double value) | Obtient ou définit la résolution horizontale, en pixels par pouce, de ce RasterImage. |
| getVerticalResolution() | Obtient ou définit la résolution verticale, en pixels par pouce, de ce RasterImage. |
| setVerticalResolution(double value) | Obtient ou définit la résolution verticale, en pixels par pouce, de ce RasterImage. |
| hasTransparentColor() | Obtient une valeur indiquant si cette instance de RasterImage possède une couleur transparente. |
| hasAlpha() | Obtient une valeur indiquant si cette instance possède de l’alpha. |
| getTransparentColor() | Obtient la couleur transparente de l’image. |
| setTransparentColor(boolean value) | Définit une valeur indiquant si cette instance de RasterImage possède une couleur transparente. |
| setTransparentColor(Color value) | Obtient la couleur transparente de l’image. |
| getImageOpacity() | Obtient l’opacité de cette image. |
| removeMetadata() | Supprime les métadonnées de cette instance d’image en définissant la valeur de IHasXmpData.XmpData(IHasXmpData.getXmpData/IHasXmpData.setXmpData(XmpPacketWrapper)) à null. |
| getModifyDate(boolean useDefault) | Récupère la date et l’heure auxquelles l’image de la ressource a subi sa dernière modification. |
| dither(int ditheringMethod, int bitsCount) | Effectue le tramage sur l’image actuelle. |
| dither(int ditheringMethod, int bitsCount, IColorPalette customPalette) | Effectue le tramage sur l’image actuelle. |
| getDefaultPixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader) | Obtient le tableau de pixels par défaut en utilisant le chargeur de pixels partiel. |
| getDefaultRawData(Rectangle rectangle, IPartialRawDataLoader partialRawDataLoader, RawDataSettings rawDataSettings) | Obtient le tableau de données brutes par défaut en utilisant le chargeur de pixels partiel. |
| getDefaultArgb32Pixels(Rectangle rectangle) | Obtient le tableau de pixels ARGB 32 bits par défaut. |
| getDefaultRawData(Rectangle rectangle, RawDataSettings rawDataSettings) | Obtient le tableau de données brutes par défaut. |
| getArgb32Pixel(int x, int y) | Obtient un pixel ARGB 32 bits d’image. |
| getPixel(int x, int y) | Obtient un pixel d’image. |
| setArgb32Pixel(int x, int y, int argb32Color) | Définit un pixel ARGB 32 bits d’image pour la position spécifiée. |
| setPixel(int x, int y, Color color) | Définit un pixel d’image pour la position spécifiée. |
| readScanLine(int scanLineIndex) | Lit la ligne de numérisation complète à l’index de ligne de numérisation spécifié. |
| readArgb32ScanLine(int scanLineIndex) | Lit la ligne de numérisation complète à l’index de ligne de numérisation spécifié. |
| writeScanLine(int scanLineIndex, Color[] pixels) | Écrit la ligne de numérisation complète à l’index de ligne de numérisation spécifié. |
| writeArgb32ScanLine(int scanLineIndex, int[] argb32Pixels) | Écrit la ligne de numérisation complète à l’index de ligne de numérisation spécifié. |
| loadPartialArgb32Pixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader) | Charge partiellement les pixels ARGB 32 bits par paquets. |
| loadPartialPixels(Rectangle desiredRectangle, IPartialPixelLoader pixelLoader) | Charge les pixels partiellement par paquets. |
| loadArgb32Pixels(Rectangle rectangle) | Charge les pixels ARGB 32 bits. |
| loadArgb64Pixels(Rectangle rectangle) | Charge les pixels ARGB 64 bits. |
| loadPartialArgb64Pixels(Rectangle rectangle, IPartialArgb64PixelLoader partialPixelLoader) | Charge partiellement les pixels ARGB 64 bits par paquets. |
| loadPixels(Rectangle rectangle) | Charge les pixels. |
| loadCmykPixels(Rectangle rectangle) | Charge les pixels au format CMYK. |
| loadCmyk32Pixels(Rectangle rectangle) | Charge les pixels au format CMYK. |
| loadRawData(Rectangle rectangle, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader) | Charge les données d’image brutes en utilisant le mécanisme de traitement partiel. |
| loadRawData(Rectangle rectangle, Rectangle dstImageBounds, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader) | Charge les données brutes. |
| saveRawData(byte[] data, int dataOffset, Rectangle rectangle, RawDataSettings rawDataSettings) | Enregistre les données brutes. |
| saveArgb32Pixels(Rectangle rectangle, int[] pixels) | Enregistre les pixels ARGB 32 bits. |
| savePixels(Rectangle rectangle, Color[] pixels) | Enregistre les pixels. |
| toBitmap() | Convertit l’image raster en bitmap. |
| saveCmykPixels(Rectangle rectangle, CmykColor[] pixels) | Enregistre les pixels. |
| saveCmyk32Pixels(Rectangle rectangle, int[] pixels) | Enregistre les pixels. |
| setResolution(double dpiX, double dpiY) | Définit la résolution pour ce RasterImage. |
| setPalette(IColorPalette palette, boolean updateColors) | Définit la palette de l’image. |
| autoRotate() | Fait pivoter automatiquement l’image en fonction des données d’orientation extraites des métadonnées Exif. |
| resize(int newWidth, int newHeight, ImageResizeSettings settings) | Redimensionne l’image avec des options étendues. |
| rotate(float angle, boolean resizeProportionally, Color backgroundColor) | Faire pivoter l’image autour du centre. |
| rotate(float angle) | Faire pivoter l’image autour du centre. |
| binarizeFixed(byte threshold) | Binarisation d’une image avec un seuil prédéfini |
| binarizeOtsu() | Binarisation d’une image avec le seuillage d’Otsu |
| binarizeBradley(double brightnessDifference) | Binarisation d’une image en utilisant l’algorithme de seuillage adaptatif de Bradley avec le seuillage par image intégrale |
| binarizeBradley(double brightnessDifference, int windowSize) | Binarisation d’une image en utilisant l’algorithme de seuillage adaptatif de Bradley avec le seuillage par image intégrale |
| blend(Point origin, RasterImage overlay, Rectangle overlayArea) | Mélange cette instance d’image avec l’image overlay. |
| blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha) | Mélange cette instance d’image avec l’image overlay. |
| blend(Point origin, RasterImage overlay) | Mélange cette instance d’image avec le overlay avec alpha == 255. |
| blend(Point origin, RasterImage overlay, byte overlayAlpha) | Mélange cette instance d’image avec le overlay. |
| grayscale() | Transformation d’une image en sa représentation en niveaux de gris |
| normalizeHistogram() | Normalise l’histogramme de l’image \u2014 ajuste les valeurs des pixels pour utiliser toute la plage disponible. |
| autoBrightnessContrast() | Normalisation automatique adaptative de la luminosité et du contraste pour l’image entière. |
| adjustBrightness(int brightness) | Ajustement de la luminosité d’une image. |
| adjustContrast(float contrast) | Contraste d’image |
| embedDigitalSignature(String password) | Intégrer une signature numérique basée sur le mot de passe fourni dans l’image en utilisant la stéganographie. |
| analyzePercentageDigitalSignature(String password) | Calcule le pourcentage de similarité entre les données extraites et le mot de passe original. |
| isDigitalSigned(String password) | Effectue une vérification rapide pour déterminer si l’image est signée numériquement, en utilisant le mot de passe fourni et le seuil. |
| isDigitalSigned(String password, int percentageThreshold) | Effectue une vérification rapide pour déterminer si l’image est signée numériquement, en utilisant le mot de passe fourni et le seuil. |
| adjustGamma(float gammaRed, float gammaGreen, float gammaBlue) | Correction gamma d’une image. |
| adjustGamma(float gamma) | Correction gamma d’une image. |
| getSkewAngle() | Obtient l’angle d’inclinaison. |
| normalizeAngle() | Normalise l’angle. |
| normalizeAngle(boolean resizeProportionally, Color backgroundColor) | Normalise l’angle. |
| filter(Rectangle rectangle, FilterOptionsBase options) | Filtre le rectangle spécifié. |
| replaceColor(Color oldColor, byte oldColorDiff, Color newColor) | Remplace une couleur par une autre avec une différence autorisée et préserve la valeur alpha originale pour conserver des bords lisses. |
| replaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb) | Remplace une couleur par une autre avec une différence autorisée et préserve la valeur alpha originale pour conserver des bords lisses. |
| replaceNonTransparentColors(Color newColor) | Remplace toutes les couleurs non transparentes par une nouvelle couleur et préserve la valeur alpha originale pour conserver des bords lisses. |
| replaceNonTransparentColors(int newColorArgb) | Remplace toutes les couleurs non transparentes par une nouvelle couleur et préserve la valeur alpha originale pour conserver des bords lisses. |
Example: This example shows how to load pixel information in an array of colors, manipulates the array and set it back to the image.
String dir = "c:\\temp\\";
// Créez une instance de GifOptions et définissez ses différentes propriétés, y compris la propriété Source
com.aspose.imaging.imageoptions.GifOptions gifOptions = new com.aspose.imaging.imageoptions.GifOptions();
gifOptions.setSource(new com.aspose.imaging.sources.FileCreateSource(dir + "output.gif", false));
// Créer une instance de Image
com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.create(gifOptions, 500, 500);
try {
// Obtenez les pixels de l'image en spécifiant la zone comme la frontière de l'image
com.aspose.imaging.Color[] pixels = image.loadPixels(image.getBounds());
// Parcourez le tableau et définissez la couleur du pixel indexé alternatif
for (int index = 0; index < pixels.length; index++) {
if (index % 2 == 0) {
// Définissez la couleur du pixel indexé sur jaune
pixels[index] = com.aspose.imaging.Color.getYellow();
} else {
// Définissez la couleur du pixel indexé sur bleu
pixels[index] = com.aspose.imaging.Color.getBlue();
}
}
// Appliquez les modifications de pixels à l'image
image.savePixels(image.getBounds(), pixels);
// Enregistrer toutes les modifications.
image.save();
} finally {
image.dispose();
}
getPremultiplyComponents()
public boolean getPremultiplyComponents()
Obtient ou définit une valeur indiquant si les composants de l’image doivent être prémultipliés.
Returns:
booléen - true si les composants de l’image doivent être prémultipliés ; sinon, false.
setPremultiplyComponents(boolean value)
public void setPremultiplyComponents(boolean value)
Obtient ou définit une valeur indiquant si les composants de l’image doivent être prémultipliés.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | boolean | true si les composants de l’image doivent être prémultipliés ; sinon, false. |
Example: The following example creates a new raster image, saves the specified semi-transparent pixels, then loads those pixels and gets final colors in the premultiplied form.
int imageWidth = 3;
int imageHeight = 2;
com.aspose.imaging.Color[] colors = new com.aspose.imaging.Color[]
{
com.aspose.imaging.Color.fromArgb(127, 255, 0, 0),
com.aspose.imaging.Color.fromArgb(127, 0, 255, 0),
com.aspose.imaging.Color.fromArgb(127, 0, 0, 255),
com.aspose.imaging.Color.fromArgb(127, 255, 255, 0),
com.aspose.imaging.Color.fromArgb(127, 255, 0, 255),
com.aspose.imaging.Color.fromArgb(127, 0, 255, 255),
};
com.aspose.imaging.imageoptions.PngOptions createOptions = new com.aspose.imaging.imageoptions.PngOptions();
createOptions.setSource(new com.aspose.imaging.sources.StreamSource(new com.aspose.imaging.system.io.MemoryStream(), true));
createOptions.setColorType(com.aspose.imaging.fileformats.png.PngColorType.TruecolorWithAlpha);
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(createOptions, imageWidth, imageHeight);
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Enregistrer les pixels pour l'image entière.
rasterImage.savePixels(rasterImage.getBounds(), colors);
// Les pixels sont stockés dans l'image originale sous forme non prémultipliée.
// Il faut spécifier explicitement l'option correspondante pour obtenir des composants couleur prémultipliés.
// Les composants couleur prémultipliés sont calculés à l'aide des formules:
// red = original_red * alpha / 255;
// green = original_green * alpha / 255;
// blue = original_blue * alpha / 255;
rasterImage.setPremultiplyComponents(true);
com.aspose.imaging.Color[] premultipliedColors = rasterImage.loadPixels(rasterImage.getBounds());
for (int i = 0; i < colors.length; i++) {
System.out.println("Original color: " + colors[i].toString());
System.out.println("Premultiplied color: " + premultipliedColors[i].toString());
}
} finally {
image.dispose();
}
getUseRawData()
public boolean getUseRawData()
Obtient ou définit une valeur indiquant s’il faut utiliser le chargement de données brutes lorsque le chargement de données brutes est disponible.
Returns:
booléen - true si le chargement de données brutes est utilisé lorsque le chargement de données brutes est disponible ; sinon, false.
setUseRawData(boolean value)
public void setUseRawData(boolean value)
Obtient ou définit une valeur indiquant s’il faut utiliser le chargement de données brutes lorsque le chargement de données brutes est disponible.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | boolean | true si le chargement de données brutes est utilisé lorsque le chargement de données brutes est disponible ; sinon, false. |
getUpdateXmpData()
public boolean getUpdateXmpData()
Obtient ou définit une valeur indiquant s’il faut mettre à jour les métadonnées XMP.
Returns:
booléen - true si la métadonnée XMP est mise à jour ; sinon, false.
setUpdateXmpData(boolean value)
public void setUpdateXmpData(boolean value)
Obtient ou définit une valeur indiquant s’il faut mettre à jour les métadonnées XMP.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | boolean | true si la métadonnée XMP est mise à jour ; sinon, false. |
getRawIndexedColorConverter()
public IIndexedColorConverter getRawIndexedColorConverter()
Obtient ou définit le convertisseur de couleur indexée
Returns: IIndexedColorConverter - The indexed color converter
setRawIndexedColorConverter(IIndexedColorConverter value)
public void setRawIndexedColorConverter(IIndexedColorConverter value)
Obtient ou définit le convertisseur de couleur indexée
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| value | IIndexedColorConverter | Le convertisseur de couleur indexée |
getRawCustomColorConverter()
public IColorConverter getRawCustomColorConverter()
Obtient ou définit le convertisseur de couleur personnalisé
Returns: IColorConverter - The custom color converter
setRawCustomColorConverter(IColorConverter value)
public void setRawCustomColorConverter(IColorConverter value)
Obtient ou définit le convertisseur de couleur personnalisé
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| value | IColorConverter | Le convertisseur de couleur personnalisé |
getRawFallbackIndex()
public int getRawFallbackIndex()
Obtient ou définit l’index de secours à utiliser lorsque l’index de palette est hors limites
Returns: int - L’index de secours à utiliser lorsque l’index de la palette est hors limites
setRawFallbackIndex(int value)
public void setRawFallbackIndex(int value)
Obtient ou définit l’index de secours à utiliser lorsque l’index de palette est hors limites
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | int | L’index de secours à utiliser lorsque l’index de la palette est hors limites |
getRawDataSettings()
public RawDataSettings getRawDataSettings()
Obtient les paramètres actuels des données brutes. Notez que lors de l’utilisation de ces paramètres, les données sont chargées sans conversion.
Returns: RawDataSettings
isUsePalette()
public boolean isUsePalette()
Obtient une valeur indiquant si la palette de l’image est utilisée.
Valeur : true si la palette est utilisée dans l’image ; sinon, false.
Returns: boolean - une valeur indiquant si la palette d’image est utilisée.
getRawDataFormat()
public PixelDataFormat getRawDataFormat()
Obtient le format des données brutes.
Returns: PixelDataFormat - The raw data format.
Example: The following example loads raster images and prints information about raw data format and alpha channel.
// Les fichiers image à charger.
String[] fileNames = new String[]
{
"c:\\temp\\sample.bmp",
"c:\\temp\\alpha.png",
};
for (String fileName : fileNames) {
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(fileName);
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
System.out.println(
"ImageFile=" + fileName +
" FileFormat=" + rasterImage.getRawDataFormat() +
" HasAlpha=" + rasterImage.hasAlpha());
} finally {
image.dispose();
}
}
// La sortie peut ressembler à ceci :
// 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
getRawLineSize()
public int getRawLineSize()
Obtient la taille de ligne brute en octets.
Returns: int - La taille brute de la ligne en octets.
isRawDataAvailable()
public boolean isRawDataAvailable()
Obtient une valeur indiquant si le chargement de données brutes est disponible.
Returns:
booléen - true si ce chargement de données brutes est disponible ; sinon, false.
getHorizontalResolution()
public double getHorizontalResolution()
Obtient ou définit la résolution horizontale, en pixels par pouce, de ce RasterImage.
Returns: double - La résolution horizontale.
Remarque : par défaut, cette valeur est toujours 96 car différentes plateformes ne peuvent pas renvoyer la résolution de l’écran. Vous pouvez envisager d’utiliser la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel.
Example: The following example shows how to set horizontal/vertical resolution of a raster image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.jpg");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez la résolution horizontale et verticale de l'image
double horizontalResolution = rasterImage.getHorizontalResolution();
double verticalResolution = rasterImage.getVerticalResolution();
System.out.println("The horizontal resolution, in pixels per inch: " + horizontalResolution);
System.out.println("The vertical resolution, in pixels per inch: " + verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0) {
// Utilisez la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel.
System.out.println("Set resolution values to 96 dpi");
rasterImage.setResolution(96.0, 96.0);
System.out.println("The horizontal resolution, in pixels per inch: " + rasterImage.getHorizontalResolution());
System.out.println("The vertical resolution, in pixels per inch: " + rasterImage.getVerticalResolution());
}
// La sortie peut ressembler à ceci :
// La résolution horizontale, en pixels par pouce : 300.0
// La résolution verticale, en pixels par pouce : 300.0
// Définissez les valeurs de résolution à 96 dpi
// La résolution horizontale, en pixels par pouce : 96.0
// La résolution verticale, en pixels par pouce : 96.0
} finally {
image.dispose();
}
setHorizontalResolution(double value)
public void setHorizontalResolution(double value)
Obtient ou définit la résolution horizontale, en pixels par pouce, de ce RasterImage.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | double |
Remarque : par défaut, cette valeur est toujours 96 car différentes plateformes ne peuvent pas renvoyer la résolution de l’écran. Vous pouvez envisager d’utiliser la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel. |
getVerticalResolution()
public double getVerticalResolution()
Obtient ou définit la résolution verticale, en pixels par pouce, de ce RasterImage.
Returns: double - La résolution verticale.
Remarque : par défaut, cette valeur est toujours 96 car différentes plateformes ne peuvent pas renvoyer la résolution de l’écran. Vous pouvez envisager d’utiliser la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel.
Example: The following example shows how to set horizontal/vertical resolution of a raster image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.jpg");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez la résolution horizontale et verticale de l'image
double horizontalResolution = rasterImage.getHorizontalResolution();
double verticalResolution = rasterImage.getVerticalResolution();
System.out.println("The horizontal resolution, in pixels per inch: " + horizontalResolution);
System.out.println("The vertical resolution, in pixels per inch: " + verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0) {
// Utilisez la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel.
System.out.println("Set resolution values to 96 dpi");
rasterImage.setResolution(96.0, 96.0);
System.out.println("The horizontal resolution, in pixels per inch: " + rasterImage.getHorizontalResolution());
System.out.println("The vertical resolution, in pixels per inch: " + rasterImage.getVerticalResolution());
}
// La sortie peut ressembler à ceci :
// La résolution horizontale, en pixels par pouce : 300.0
// La résolution verticale, en pixels par pouce : 300.0
// Définissez les valeurs de résolution à 96 dpi
// La résolution horizontale, en pixels par pouce : 96.0
// La résolution verticale, en pixels par pouce : 96.0
} finally {
image.dispose();
}
setVerticalResolution(double value)
public void setVerticalResolution(double value)
Obtient ou définit la résolution verticale, en pixels par pouce, de ce RasterImage.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| valeur | double |
Remarque : par défaut, cette valeur est toujours 96 car différentes plateformes ne peuvent pas renvoyer la résolution de l’écran. Vous pouvez envisager d’utiliser la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel. |
hasTransparentColor()
public boolean hasTransparentColor()
Obtient une valeur indiquant si cette instance de RasterImage possède une couleur transparente.
L’implémentation de base renvoie effectivement `` si elle n’est pas remplacée dans une implémentation spécifique qui prend en charge cette fonctionnalité. Cette propriété est principalement utilisée par FileFormat.Apng, FileFormat.Png, FileFormat.Gif, FileFormat.Tga pour définir une couleur transparente si une image ne prend pas en charge la transparence via le canal alpha.
Returns: boolean - une valeur indiquant si cette instance RasterImage possède une couleur transparente.
hasAlpha()
public boolean hasAlpha()
Obtient une valeur indiquant si cette instance possède de l’alpha.
Returns:
boolean - true si cette instance possède un canal alpha ; sinon, false.
Example: The following example loads raster images and prints information about raw data format and alpha channel.
// Les fichiers image à charger.
String[] fileNames = new String[]
{
"c:\\temp\\sample.bmp",
"c:\\temp\\alpha.png",
};
for (String fileName : fileNames) {
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(fileName);
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
System.out.println(
"ImageFile=" + fileName +
" FileFormat=" + rasterImage.getRawDataFormat() +
" HasAlpha=" + rasterImage.hasAlpha());
} finally {
image.dispose();
}
}
// La sortie peut ressembler à ceci :
// 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
getTransparentColor()
public Color getTransparentColor()
Obtient la couleur transparente de l’image.
Returns: Color
setTransparentColor(boolean value)
public void setTransparentColor(boolean value)
Définit une valeur indiquant si cette instance de RasterImage possède une couleur transparente.
L’implémentation de base renvoie effectivement `` si elle n’est pas remplacée dans une implémentation spécifique qui prend en charge cette fonctionnalité. Cette propriété est principalement utilisée par FileFormat.Apng, FileFormat.Png, FileFormat.Gif, FileFormat.Tga pour définir une couleur transparente si une image ne prend pas en charge la transparence via le canal alpha.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| value | boolean | une valeur indiquant si cette instance RasterImage possède une couleur transparente. |
setTransparentColor(Color value)
public void setTransparentColor(Color value)
Obtient la couleur transparente de l’image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| value | Color |
getImageOpacity()
public float getImageOpacity()
Obtient l’opacité de cette image.
Returns: float - La valeur d’opacité entre 0.0 (totalement transparent) et 1.0 (totalement opaque).
removeMetadata()
public void removeMetadata()
Supprime les métadonnées de cette instance d’image en définissant la valeur de IHasXmpData.XmpData(IHasXmpData.getXmpData/IHasXmpData.setXmpData(XmpPacketWrapper)) à null.
getModifyDate(boolean useDefault)
public Date getModifyDate(boolean useDefault)
Récupère la date et l’heure de la dernière modification de l’image de ressource. Cette méthode fournit des métadonnées précieuses, permettant aux utilisateurs de suivre et de gérer efficacement les mises à jour du fichier image. En accédant à ces informations, les utilisateurs peuvent garantir l’intégrité et l’actualité de leurs actifs d’image, facilitant ainsi une prise de décision éclairée concernant l’utilisation et la maintenance des images.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| useDefault | boolean | si défini sur true, utilise les informations de FileInfo comme valeur par défaut. |
Returns: java.util.Date - La date et l’heure auxquelles l’image de ressource a été modifiée pour la dernière fois.
dither(int ditheringMethod, int bitsCount)
public void dither(int ditheringMethod, int bitsCount)
Effectue le tramage sur l’image actuelle.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| ditheringMethod | int | La méthode de tramage. |
| bitsCount | int | Le nombre final de bits pour le tramage. |
Example: The following example loads a raster image and performs threshold and floyd dithering using different palette depth.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Effectuer un dithering par seuil en utilisant une palette de couleurs 4 bits contenant 16 couleurs.
// Plus le nombre de bits spécifié est élevé, meilleure est la qualité et plus grande est la taille de l'image de sortie.
// Notez que seules les palettes de 1 bit, 4 bits et 8 bits sont prises en charge pour le moment.
rasterImage.dither(com.aspose.imaging.DitheringMethod.ThresholdDithering, 4);
rasterImage.save(dir + "sample.ThresholdDithering4.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Effectuer un dithering Floyd en utilisant une palette de couleurs 1 bit contenant uniquement 2 couleurs - noir et blanc.
// Plus le nombre de bits spécifié est élevé, meilleure est la qualité et plus grande est la taille de l'image de sortie.
// Notez que seules les palettes de 1 bit, 4 bits et 8 bits sont prises en charge pour le moment.
rasterImage.dither(com.aspose.imaging.DitheringMethod.FloydSteinbergDithering, 1);
rasterImage.save(dir + "sample.FloydSteinbergDithering1.png");
} finally {
image.dispose();
}
dither(int ditheringMethod, int bitsCount, IColorPalette customPalette)
public abstract void dither(int ditheringMethod, int bitsCount, IColorPalette customPalette)
Effectue le tramage sur l’image actuelle.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| ditheringMethod | int | La méthode de tramage. |
| bitsCount | int | Le nombre final de bits pour le tramage. |
| customPalette | IColorPalette | La palette personnalisée pour le tramage. |
getDefaultPixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
public void getDefaultPixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Obtient le tableau de pixels par défaut en utilisant le chargeur de pixels partiel.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle pour lequel obtenir les pixels. |
| partialPixelLoader | IPartialArgb32PixelLoader | Le chargeur de pixels partiel. |
getDefaultRawData(Rectangle rectangle, IPartialRawDataLoader partialRawDataLoader, RawDataSettings rawDataSettings)
public void getDefaultRawData(Rectangle rectangle, IPartialRawDataLoader partialRawDataLoader, RawDataSettings rawDataSettings)
Obtient le tableau de données brutes par défaut en utilisant le chargeur de pixels partiel.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle pour lequel obtenir les pixels. |
| partialRawDataLoader | IPartialRawDataLoader | Le chargeur partiel de données brutes. |
| rawDataSettings | RawDataSettings | Les paramètres des données brutes. |
getDefaultArgb32Pixels(Rectangle rectangle)
public int[] getDefaultArgb32Pixels(Rectangle rectangle)
Obtient le tableau de pixels ARGB 32 bits par défaut.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle pour lequel obtenir les pixels. |
Returns: int[] - Le tableau de pixels par défaut.
getDefaultRawData(Rectangle rectangle, RawDataSettings rawDataSettings)
public byte[] getDefaultRawData(Rectangle rectangle, RawDataSettings rawDataSettings)
Obtient le tableau de données brutes par défaut.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle dont on veut obtenir les données brutes. |
| rawDataSettings | RawDataSettings | Les paramètres des données brutes. |
Returns: byte[] - Le tableau de données brutes par défaut.
getArgb32Pixel(int x, int y)
public int getArgb32Pixel(int x, int y)
Obtient un pixel ARGB 32 bits d’image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| x | int | L’emplacement x du pixel. |
| y | int | L’emplacement y du pixel. |
Returns: int - Le pixel ARGB 32 bits pour l’emplacement spécifié.
Example: The following example loads a raster image and obtains the color of an arbitrary pixel represented as a 32-bit integer value.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez une représentation entière de la couleur du pixel supérieur gauche de l'image.
int color = rasterImage.getArgb32Pixel(0, 0);
// Pour obtenir les valeurs des composants de couleur individuels, décalez la valeur de couleur d'un nombre de bits correspondant.
int alpha = (color >> 24) & 0xff;
int red = (color >> 16) & 0xff;
int green = (color >> 8) & 0xff;
int blue = (color >> 0) & 0xff;
System.out.println("The color of the pixel(0,0) is A=" + alpha + ",R=" + red + ",G=" + green + ",B=" + blue);
} finally {
image.dispose();
}
// La sortie peut ressembler à ceci :
// La couleur du pixel(0,0) est A=255,R=0,G=0,B=0
getPixel(int x, int y)
public Color getPixel(int x, int y)
Obtient un pixel d’image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| x | int | L’emplacement x du pixel. |
| y | int | L’emplacement y du pixel. |
Returns: Color - The pixel color for the specified location.
Example: The following example loads a raster image and obtains the color of an arbitrary pixel.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez la couleur du pixel supérieur gauche de l'image.
com.aspose.imaging.Color color = rasterImage.getPixel(0, 0);
// Obtenez les valeurs des composants de couleur individuels
int alpha = color.getA();
int red = color.getR();
int green = color.getG();
int blue = color.getB();
System.out.println("The color of the pixel(0,0) is A=" + alpha + ",R=" + red + ",G=" + green + ",B=" + blue);
} finally {
image.dispose();
}
setArgb32Pixel(int x, int y, int argb32Color)
public void setArgb32Pixel(int x, int y, int argb32Color)
Définit un pixel ARGB 32 bits d’image pour la position spécifiée.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| x | int | L’emplacement x du pixel. |
| y | int | L’emplacement y du pixel. |
| argb32Color | int | Le pixel ARGB 32 bits pour la position spécifiée. |
Example: The following example loads a raster image, and sets the color of an arbitrary pixel.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définit la couleur du pixel supérieur gauche.
rasterImage.setArgb32Pixel(0, 0, com.aspose.imaging.Color.getAqua().toArgb());
// Une autre façon consiste à passer directement une instance de com.aspose.imaging.Color
rasterImage.setPixel(0, 0, com.aspose.imaging.Color.getAqua());
} finally {
image.dispose();
}
setPixel(int x, int y, Color color)
public void setPixel(int x, int y, Color color)
Définit un pixel d’image pour la position spécifiée.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| x | int | L’emplacement x du pixel. |
| y | int | L’emplacement y du pixel. |
| color | Color | La couleur du pixel pour la position spécifiée. |
Example: The following example loads a raster image, and sets the color of an arbitrary pixel.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définit la couleur du pixel supérieur gauche.
rasterImage.setArgb32Pixel(0, 0, com.aspose.imaging.Color.getAqua().toArgb());
// Une autre façon consiste à passer directement une instance de com.aspose.imaging.Color
rasterImage.setPixel(0, 0, com.aspose.imaging.Color.getAqua());
} finally {
image.dispose();
}
readScanLine(int scanLineIndex)
public Color[] readScanLine(int scanLineIndex)
Lit la ligne de numérisation complète à l’index de ligne de numérisation spécifié.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| scanLineIndex | int | Indice basé sur zéro de la ligne de numérisation. |
Returns: com.aspose.imaging.Color[] - Le tableau des valeurs de couleur des pixels de la ligne de numérisation.
readArgb32ScanLine(int scanLineIndex)
public int[] readArgb32ScanLine(int scanLineIndex)
Lit la ligne de numérisation complète à l’index de ligne de numérisation spécifié.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| scanLineIndex | int | Indice basé sur zéro de la ligne de numérisation. |
Returns: int[] - Le tableau des valeurs de couleur ARGB 32 bits de la ligne de numérisation.
writeScanLine(int scanLineIndex, Color[] pixels)
public void writeScanLine(int scanLineIndex, Color[] pixels)
Écrit la ligne de numérisation complète à l’index de ligne de numérisation spécifié.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| scanLineIndex | int | Indice basé sur zéro de la ligne de numérisation. |
| pixels | Color[] | Le tableau des couleurs de pixels à écrire. |
writeArgb32ScanLine(int scanLineIndex, int[] argb32Pixels)
public void writeArgb32ScanLine(int scanLineIndex, int[] argb32Pixels)
Écrit la ligne de numérisation complète à l’index de ligne de numérisation spécifié.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| scanLineIndex | int | Indice basé sur zéro de la ligne de numérisation. |
| argb32Pixels | int[] | Le tableau des couleurs ARGB 32 bits à écrire. |
loadPartialArgb32Pixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
public void loadPartialArgb32Pixels(Rectangle rectangle, IPartialArgb32PixelLoader partialPixelLoader)
Charge partiellement les pixels ARGB 32 bits par paquets.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle souhaité. |
| partialPixelLoader | IPartialArgb32PixelLoader | Le chargeur de pixels ARGB 32 bits. |
Example: The following example shows how to load and process pixels of a raster image using your own partial processor. L’exemple suivant montre comment charger et traiter les pixels d’une image raster en utilisant votre propre processeur partiel. Par exemple, considérez un problème de comptage des pixels entièrement transparents d’une image. Afin de compter les pixels transparents en utilisant le mécanisme de chargement partiel, une classe séparée TransparentArgb32PixelCounter implémentant com.aspose.imaging.IPartialArgb32PixelLoader est introduite.
// Tout d'abord, implémentez com.aspose.imaging.IPartialArgb32PixelLoader pour compter tous les pixels entièrement transparents.
/** Counts the number of fully transparent pixels with alpha channel value of 0. */
class TransparentArgb32PixelCounter implements com.aspose.imaging.IPartialArgb32PixelLoader {
/**
* The number of fully transparent pixels.
*/
private int count;
/**
* Gets the number of fully transparent pixels.
*/
public int getCount() {
return this.count;
}
/**
* <p>Processes the loaded pixels. This method is called back every time when a new portion of pixels is loaded.</p> *
*
* @param pixelsRectangle The pixels rectangle.
* @param pixels The 32-bit ARGB pixels.
* @param start The start pixels point.
* @param end The end pixels point.
*/
public void process(com.aspose.imaging.Rectangle pixelsRectangle, int[] pixels, com.aspose.imaging.Point start, com.aspose.imaging.Point end) {
for (int pixel : pixels) {
int alpha = (pixel >> 24) & 0xff;
if (alpha == 0) {
this.count++;
}
}
}
}
// Voici un exemple d'utilisation du compteur.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\alpha.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Créez une instance de com.aspose.imaging.IPartialArgb32PixelLoader et transmettez-la à com.aspose.imaging.RasterImage.LoadPartialArgb32Pixels
TransparentArgb32PixelCounter counter = new TransparentArgb32PixelCounter();
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme premier paramètre de la méthode com.aspose.imaging.RasterImage.loadPartialArgb32Pixels.
rasterImage.loadPartialArgb32Pixels(rasterImage.getBounds(), counter);
System.out.println("The number of fully transparent pixels is " + counter.getCount());
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
// La sortie peut ressembler à ceci :
// Le nombre de pixels entièrement transparents est de 55157
// Le nombre total de pixels est de 120400
loadPartialPixels(Rectangle desiredRectangle, IPartialPixelLoader pixelLoader)
public void loadPartialPixels(Rectangle desiredRectangle, IPartialPixelLoader pixelLoader)
Charge les pixels partiellement par paquets.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| desiredRectangle | Rectangle | Le rectangle souhaité. |
| pixelLoader | IPartialPixelLoader | Le chargeur de pixels. |
Example: The following example shows how to load and process pixels of a raster image using your own partial processor. L’exemple suivant montre comment charger et traiter les pixels d’une image raster en utilisant votre propre processeur partiel. Par exemple, considérez un problème de comptage des pixels entièrement transparents d’une image. Afin de compter les pixels transparents en utilisant le mécanisme de chargement partiel, une classe distincte TransparentPixelCounter implémentant com.aspose.imaging.IPartialPixelLoader est introduite.
// Tout d'abord, implémentez com.aspose.imaging.IPartialPixelLoader pour compter tous les pixels entièrement transparents.
/** Counts the number of fully transparent pixels with alpha channel value of 0. */
class TransparentPixelCounter implements com.aspose.imaging.IPartialPixelLoader {
/**
* The number of fully transparent pixels.
*/
private int count;
/**
* Gets the number of fully transparent pixels.
*/
public int getCount() {
return this.count;
}
/**
* <p>Processes the loaded pixels. This method is called back every time when a new portion of pixels is loaded.</p>
*
* @param pixelsRectangle The pixels rectangle.
* @param pixels The 32-bit ARGB pixels.
* @param start The start pixels point.
* @param end The end pixels point.
*/
public void process(com.aspose.imaging.Rectangle pixelsRectangle, com.aspose.imaging.Color[] pixels, com.aspose.imaging.Point start, com.aspose.imaging.Point end) {
for (com.aspose.imaging.Color pixel : pixels) {
if (pixel.getA() == 0) {
this.count++;
}
}
}
}
// Voici un exemple d'utilisation du compteur.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\alpha.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Créez une instance de com.aspose.imaging.IPartialPixelLoader et transmettez-la à com.aspose.imaging.RasterImage.loadPartialPixels
TransparentPixelCounter counter = new TransparentPixelCounter();
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme premier paramètre de la méthode com.aspose.imaging.RasterImage.loadPartialPixels.
rasterImage.loadPartialPixels(rasterImage.getBounds(), counter);
System.out.println("The number of fully transparent pixels is " + counter.getCount());
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
// La sortie peut ressembler à ceci :
// Le nombre de pixels entièrement transparents est de 55157
// Le nombre total de pixels est de 120400
loadArgb32Pixels(Rectangle rectangle)
public int[] loadArgb32Pixels(Rectangle rectangle)
Charge les pixels ARGB 32 bits.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle depuis lequel charger les pixels. |
Returns: int[] - Le tableau de pixels ARGB 32 bits chargé.
Example: The following example shows how to load and process pixels of a raster image. L’exemple suivant montre comment charger et traiter les pixels d’une image raster. Les pixels sont représentés sous forme de valeurs entières 32 bits. Par exemple, considérez un problème de comptage des pixels entièrement transparents d’une image.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\alpha.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme paramètre de la méthode com.aspose.imaging.RasterImage.loadArgb32Pixels.
int[] pixels = rasterImage.loadArgb32Pixels(rasterImage.getBounds());
int count = 0;
for (int pixel : pixels) {
int alpha = (pixel >> 24) & 0xff;
if (alpha == 0) {
count++;
}
}
System.out.println("The number of fully transparent pixels is " + count);
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
loadArgb64Pixels(Rectangle rectangle)
public long[] loadArgb64Pixels(Rectangle rectangle)
Charge les pixels ARGB 64 bits.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle depuis lequel charger les pixels. |
Returns: long[] - Le tableau de pixels ARGB 64 bits chargé.
Example: The following example shows how to load and process pixels of a raster image. L’exemple suivant montre comment charger et traiter les pixels d’une image raster. Les pixels sont représentés sous forme de valeurs entières 64 bits. Par exemple, considérez un problème de comptage des pixels entièrement transparents d’une image.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\16rgba.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme paramètre de la méthode com.aspose.imaging.RasterImage.loadArgb64Pixels.
// Notez que l'image elle-même doit avoir 16 bits par échantillon, car com.aspose.imaging.RasterImage.loadArgb64Pixels ne fonctionne pas avec 8 bits par échantillon.
// Pour travailler avec 8 bits par échantillon, veuillez utiliser la bonne vieille méthode com.aspose.imaging.RasterImage.loadArgb32Pixels.
long[] pixels = rasterImage.loadArgb64Pixels(rasterImage.getBounds());
int count = 0;
for (long pixel : pixels) {
// Notez que tous les composants de couleur, y compris l'alpha, sont représentés par des valeurs 16 bits, donc leurs valeurs autorisées sont dans la plage [0, 63535].
long alpha = (pixel >> 48) & 0xffff;
if (alpha == 0) {
count++;
}
}
System.out.println("The number of fully transparent pixels is " + count);
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
loadPartialArgb64Pixels(Rectangle rectangle, IPartialArgb64PixelLoader partialPixelLoader)
public final void loadPartialArgb64Pixels(Rectangle rectangle, IPartialArgb64PixelLoader partialPixelLoader)
Charge partiellement les pixels ARGB 64 bits par paquets.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle souhaité. |
| partialPixelLoader | IPartialArgb64PixelLoader | Le chargeur de pixels ARGB 64 bits. |
loadPixels(Rectangle rectangle)
public Color[] loadPixels(Rectangle rectangle)
Charge les pixels.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle depuis lequel charger les pixels. |
Returns: com.aspose.imaging.Color[] - Le tableau de pixels chargé.
Example: The following example shows how to load and process pixels of a raster image. L’exemple suivant montre comment charger et traiter les pixels d’une image raster. Par exemple, considérez un problème de comptage des pixels entièrement transparents d’une image.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\alpha.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme paramètre de la méthode Aspose.Imaging.RasterImage.LoadPixels.
com.aspose.imaging.Color[] pixels = rasterImage.loadPixels(rasterImage.getBounds());
int count = 0;
for (com.aspose.imaging.Color pixel : pixels) {
if (pixel.getA() == 0) {
count++;
}
}
System.out.println("The number of fully transparent pixels is " + count);
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
loadCmykPixels(Rectangle rectangle)
public CmykColor[] loadCmykPixels(Rectangle rectangle)
Charge les pixels au format CMYK. Cette méthode est obsolète. Veuillez utiliser de manière plus efficace la méthode loadCmyk32Pixels(Rectangle).
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle depuis lequel charger les pixels. |
Returns: com.aspose.imaging.CmykColor[] - Le tableau de pixels CMYK chargé.
loadCmyk32Pixels(Rectangle rectangle)
public int[] loadCmyk32Pixels(Rectangle rectangle)
Charge les pixels au format CMYK.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle depuis lequel charger les pixels. |
Returns: int[] - Les pixels CMYK chargés sont présentés sous forme de valeurs entières 32 bits.
loadRawData(Rectangle rectangle, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
public void loadRawData(Rectangle rectangle, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Charge les données d’image brutes en utilisant le mécanisme de traitement partiel.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | La zone rectangulaire souhaitée de l’image à partir de laquelle charger les données. |
| rawDataSettings | RawDataSettings | Les paramètres des données brutes. |
| rawDataLoader | IPartialRawDataLoader | Le chargeur de données brutes. |
Example: The following example shows how to extract pixels from the raw image data using RawDataSettings. L’exemple suivant montre comment extraire les pixels des données d’image brutes à l’aide de RawDataSettings. Par exemple, considérez un problème de comptage des pixels totalement transparents d’une image.
// Tout d'abord, implémentez un compteur. Dans le cas de données brutes, le compteur peut ressembler à ceci :
/** Counts the number of fully transparent pixels with alpha channel value of 0. */
class TransparentPixelRawDataCounter implements com.aspose.imaging.IPartialRawDataLoader {
/**
* The number of fully transparent pixels.
*/
private int count;
/**
* The raw data settings of the loaded image.
*/
private com.aspose.imaging.RawDataSettings rawDataSettings;
/**
* Gets the number of fully transparent pixels.
*/
public int getCount() {
return this.count;
}
/**
* <p>Initializes a new instance of the <see TransparentPixelRawDataCounter /> class.</p>
*
* @param settings The raw data settings allow to extract color components from raw data.
*/
public TransparentPixelRawDataCounter(com.aspose.imaging.RawDataSettings settings) {
this.rawDataSettings = settings;
this.count = 0;
}
/**
* <p>Processes the loaded raw data. This method is called back every time when a new portion of raw data is loaded.</p>
*
* @param dataRectangle The raw data rectangle.
* @param data The raw data.
* @param start The start data point.
* @param end The end data point.
*/
public void process(com.aspose.imaging.Rectangle dataRectangle, byte[] data, com.aspose.imaging.Point start, com.aspose.imaging.Point end)// throws java.lang.Exception
{
int[] channelBits = this.rawDataSettings.getPixelDataFormat().getChannelBits();
// Seuls les formats simples sont pris en compte ici pour simplifier le code.
// Considérons uniquement les images avec 8 bits par échantillon.
for (int i = 0; i < channelBits.length; i++) {
if (channelBits[i] != 8) {
throw new java.lang.UnsupportedOperationException();
}
}
switch (this.rawDataSettings.getPixelDataFormat().getPixelFormat()) {
case com.aspose.imaging.PixelFormat.Rgb:
case com.aspose.imaging.PixelFormat.Bgr: {
if (channelBits.length == 4) {
// ARGB
for (int i = 0; i < data.length; i += 4) {
// Le canal alpha est stocké en dernier, après les composants de couleur.
if (data[i + 3] == 0) {
this.count++;
}
}
}
}
break;
case com.aspose.imaging.PixelFormat.Grayscale: {
if (channelBits.length == 2) {
// Grayscale Alpha
for (int i = 0; i < data.length; i += 2) {
// Le canal alpha est stocké en dernier, après les composants de couleur.
if (data[i + 1] == 0) {
this.count++;
}
}
}
}
break;
default:
throw new java.lang.IllegalArgumentException("PixelFormat");
}
}
/**
* <p>Processes the loaded raw data. This method is called back every time when a new portion of raw data is loaded.</p> *
*
* @param dataRectangle The raw data rectangle.
* @param data The raw data.
* @param start The start data point.
* @param end The end data point.
* @param loadOptions The load options.
*/
public void process(com.aspose.imaging.Rectangle dataRectangle, byte[] data, com.aspose.imaging.Point start, com.aspose.imaging.Point end, com.aspose.imaging.LoadOptions loadOptions) {
this.process(dataRectangle, data, start, end);
}
}
// Voici l'exemple principal d'utilisation du compteur
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\alpha.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
com.aspose.imaging.RawDataSettings settings = rasterImage.getRawDataSettings();
TransparentPixelRawDataCounter rawDataLoader = new TransparentPixelRawDataCounter(settings);
// Chargez les pixels pour l'image entière. Toute partie rectangulaire de l'image peut être spécifiée comme paramètre de la méthode Aspose.Imaging.RasterImage.LoadRawData.
rasterImage.loadRawData(rasterImage.getBounds(), settings, rawDataLoader);
System.out.println("The number of fully transparent pixels is " + rawDataLoader.getCount());
System.out.println("The total number of pixels is " + (image.getWidth() * image.getHeight()));
} finally {
image.dispose();
}
// La sortie peut ressembler à ceci :
// Le nombre de pixels entièrement transparents est de 55157
// Le nombre total de pixels est de 120400
loadRawData(Rectangle rectangle, Rectangle dstImageBounds, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
public void loadRawData(Rectangle rectangle, Rectangle dstImageBounds, RawDataSettings rawDataSettings, IPartialRawDataLoader rawDataLoader)
Charge les données brutes.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle à partir duquel charger les données brutes. |
| dstImageBounds | Rectangle | Les limites de l’image de destination. |
| rawDataSettings | RawDataSettings | Les paramètres des données brutes à utiliser pour les données chargées. Notez que si les données ne sont pas dans le format spécifié, une conversion des données sera effectuée. |
| rawDataLoader | IPartialRawDataLoader | Le chargeur de données brutes. |
saveRawData(byte[] data, int dataOffset, Rectangle rectangle, RawDataSettings rawDataSettings)
public void saveRawData(byte[] data, int dataOffset, Rectangle rectangle, RawDataSettings rawDataSettings)
Enregistre les données brutes.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| données | byte[] | Les données brutes. |
| dataOffset | int | Le décalage de départ des données brutes. |
| rectangle | Rectangle | Le rectangle des données brutes. |
| rawDataSettings | RawDataSettings | Les paramètres des données brutes dans lesquelles les données se trouvent. |
saveArgb32Pixels(Rectangle rectangle, int[] pixels)
public void saveArgb32Pixels(Rectangle rectangle, int[] pixels)
Enregistre les pixels ARGB 32 bits.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle où enregistrer les pixels. |
| pixels | int[] | Le tableau de pixels ARGB 32 bits. |
Example: The following example fills the central area of a raster image with black pixels using the com. L’exemple suivant remplit la zone centrale d’une image raster avec des pixels noirs en utilisant la méthode com.aspose.imaging.RasterImage.saveArgb32Pixels.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Le carré noir
int[] pixels = new int[(rasterImage.getWidth() / 2) * (rasterImage.getHeight() / 2)];
for (int i = 0; i < pixels.length; i++) {
pixels[i] = com.aspose.imaging.Color.getBlack().toArgb();
}
// Dessinez le carré noir au centre de l'image.
com.aspose.imaging.Rectangle area = new com.aspose.imaging.Rectangle(rasterImage.getWidth() / 4, rasterImage.getHeight() / 4, rasterImage.getWidth() / 2, rasterImage.getHeight() / 2);
rasterImage.saveArgb32Pixels(area, pixels);
rasterImage.save(dir + "sample.SaveArgb32Pixels.png");
} finally {
image.dispose();
}
savePixels(Rectangle rectangle, Color[] pixels)
public void savePixels(Rectangle rectangle, Color[] pixels)
Enregistre les pixels.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle où enregistrer les pixels. |
| pixels | Color[] | Le tableau de pixels. |
Example: The following example fills the central area of a raster image with black pixels using the com. L’exemple suivant remplit la zone centrale d’une image raster avec des pixels noirs en utilisant la méthode com.aspose.imaging.RasterImage.savePixels.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Le carré noir
com.aspose.imaging.Color[] pixels = new com.aspose.imaging.Color[(rasterImage.getWidth() / 2) * (rasterImage.getHeight() / 2)];
for (int i = 0; i < pixels.length; i++) {
pixels[i] = com.aspose.imaging.Color.getBlack();
}
// Dessinez le carré noir au centre de l'image.
com.aspose.imaging.Rectangle area = new com.aspose.imaging.Rectangle(rasterImage.getWidth() / 4, rasterImage.getHeight() / 4, rasterImage.getWidth() / 2, rasterImage.getHeight() / 2);
rasterImage.savePixels(area, pixels);
rasterImage.save(dir + "sample.SavePixels.png");
} finally {
image.dispose();
}
toBitmap()
public BufferedImage toBitmap()
Convertit l’image raster en bitmap.
Returns: java.awt.image.BufferedImage - Le bitmap
Example: The following example converts a BMP image to a native Java bitmap.
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("c:\\temp\\sample.bmp");
try {
com.aspose.imaging.fileformats.bmp.BmpImage bmpImage = (com.aspose.imaging.fileformats.bmp.BmpImage) image;
java.awt.image.BufferedImage bitmap = bmpImage.toBitmap();
// Traitez le bitmap Java natif.
} finally {
image.dispose();
}
saveCmykPixels(Rectangle rectangle, CmykColor[] pixels)
public void saveCmykPixels(Rectangle rectangle, CmykColor[] pixels)
Enregistre les pixels. Cette méthode est obsolète. Veuillez utiliser la méthode plus efficace saveCmyk32Pixels(Rectangle, int[]).
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle où enregistrer les pixels. |
| pixels | CmykColor[] | Le tableau de pixels CMYK. |
saveCmyk32Pixels(Rectangle rectangle, int[] pixels)
public void saveCmyk32Pixels(Rectangle rectangle, int[] pixels)
Enregistre les pixels.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle où enregistrer les pixels. |
| pixels | int[] | Les pixels CMYK présentés sous forme de valeurs entières 32 bits. |
Example: The following example fills the central area of a raster image with black pixels using the com. L’exemple suivant remplit la zone centrale d’une image raster avec des pixels noirs en utilisant la méthode com.aspose.imaging.RasterImage.saveCmyk32Pixels.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez une représentation entière du noir dans l'espace colorimétrique CMYK.
int blackCmyk = com.aspose.imaging.CmykColorHelper.toCmyk(com.aspose.imaging.Color.getBlack());
// Le carré noir.
int[] pixels = new int[(rasterImage.getWidth() / 2) * (rasterImage.getHeight() / 2)];
for (int i = 0; i < pixels.length; i++) {
pixels[i] = blackCmyk;
}
// Dessinez le carré noir au centre de l'image.
com.aspose.imaging.Rectangle area = new com.aspose.imaging.Rectangle(rasterImage.getWidth() / 4, rasterImage.getHeight() / 4, rasterImage.getWidth() / 2, rasterImage.getHeight() / 2);
rasterImage.saveCmyk32Pixels(area, pixels);
rasterImage.save(dir + "sample.SaveCmyk32Pixels.png");
} finally {
image.dispose();
}
setResolution(double dpiX, double dpiY)
public void setResolution(double dpiX, double dpiY)
Définit la résolution pour ce RasterImage.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| dpiX | double | La résolution horizontale, en points par pouce, du RasterImage. |
| dpiY | double | La résolution verticale, en points par pouce, du RasterImage. |
Example: The following example shows how to set horizontal/vertical resolution of a raster image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.jpg");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Obtenez la résolution horizontale et verticale de l'image
double horizontalResolution = rasterImage.getHorizontalResolution();
double verticalResolution = rasterImage.getVerticalResolution();
System.out.println("The horizontal resolution, in pixels per inch: " + horizontalResolution);
System.out.println("The vertical resolution, in pixels per inch: " + verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0) {
// Utilisez la méthode SetResolution pour mettre à jour les deux valeurs de résolution en un seul appel.
System.out.println("Set resolution values to 96 dpi");
rasterImage.setResolution(96.0, 96.0);
System.out.println("The horizontal resolution, in pixels per inch: " + rasterImage.getHorizontalResolution());
System.out.println("The vertical resolution, in pixels per inch: " + rasterImage.getVerticalResolution());
}
// La sortie peut ressembler à ceci :
// La résolution horizontale, en pixels par pouce : 300.0
// La résolution verticale, en pixels par pouce : 300.0
// Définissez les valeurs de résolution à 96 dpi
// La résolution horizontale, en pixels par pouce : 96.0
// La résolution verticale, en pixels par pouce : 96.0
} finally {
image.dispose();
}
setPalette(IColorPalette palette, boolean updateColors)
public void setPalette(IColorPalette palette, boolean updateColors)
Définit la palette de l’image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| palette | IColorPalette | La palette à définir. |
| updateColors | boolean | si défini sur true, les couleurs seront mises à jour selon la nouvelle palette ; sinon les index de couleur restent inchangés. Notez que les index inchangés peuvent provoquer un plantage de l’image lors du chargement si certains index n’ont aucune entrée correspondante dans la palette. |
autoRotate()
public final void autoRotate()
Fait pivoter automatiquement l’image en fonction des données d’orientation extraites des métadonnées Exif. Cette méthode garantit que les images sont affichées dans la bonne orientation, améliore l’expérience utilisateur et élimine le besoin d’ajustements manuels. En analysant les informations Exif, l’image est pivotée en conséquence, offrant une expérience de visualisation fluide sur différentes plateformes et appareils. Ce processus de rotation automatisé simplifie la gestion des images et améliore la convivialité globale, notamment lors du traitement de gros lots d’images avec des orientations variées.
resize(int newWidth, int newHeight, ImageResizeSettings settings)
public void resize(int newWidth, int newHeight, ImageResizeSettings settings)
Redimensionne l’image avec des options étendues.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| newWidth | int | La nouvelle largeur. |
| newHeight | int | La nouvelle hauteur. |
| settings | ImageResizeSettings | Les paramètres de redimensionnement. |
rotate(float angle, boolean resizeProportionally, Color backgroundColor)
public void rotate(float angle, boolean resizeProportionally, Color backgroundColor)
Faire pivoter l’image autour du centre.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| angle | float | L’angle de rotation en degrés. Les valeurs positives feront pivoter dans le sens des aiguilles d’une montre. |
| resizeProportionally | boolean | si défini sur true, la taille de votre image sera modifiée selon les projections du rectangle pivoté (points d’angle) ; dans le cas contraire, les dimensions restent inchangées et seul le contenu interne de l’image est pivoté. |
| backgroundColor | Color | Couleur de l’arrière-plan. |
rotate(float angle)
public void rotate(float angle)
Faire pivoter l’image autour du centre.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| angle | float | L’angle de rotation en degrés. Les valeurs positives feront pivoter dans le sens des aiguilles d’une montre. |
binarizeFixed(byte threshold)
public void binarizeFixed(byte threshold)
Binarisation d’une image avec un seuil prédéfini
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| threshold | byte | Valeur du seuil. Si la valeur de gris correspondante d’un pixel est supérieure au seuil, une valeur de 255 lui sera attribuée, sinon 0. |
Example: The following example binarizes a raster image with the predefined threshold. L’exemple suivant binarise une image raster avec le seuil prédéfini. Les images binarisées ne contiennent que 2 couleurs - le noir et le blanc.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Binarisez l'image avec une valeur de seuil de 127.
// Si la valeur de gris correspondante d'un pixel est supérieure à 127, une valeur de 255 lui sera attribuée, sinon 0.
rasterImage.binarizeFixed((byte) 127);
rasterImage.save(dir + "sample.BinarizeFixed.png");
} finally {
image.dispose();
}
binarizeOtsu()
public void binarizeOtsu()
Binarisation d’une image avec le seuillage d’Otsu
Example: The following example binarizes a raster image with Otsu thresholding. L’exemple suivant binarise une image raster avec le seuillage d’Otsu. Les images binarisées ne contiennent que 2 couleurs - le noir et le blanc.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Binarisez l'image avec le seuillage d'Otsu.
rasterImage.binarizeOtsu();
rasterImage.save(dir + "sample.BinarizeOtsu.png");
} finally {
image.dispose();
}
binarizeBradley(double brightnessDifference)
public void binarizeBradley(double brightnessDifference)
Binarisation d’une image en utilisant l’algorithme de seuillage adaptatif de Bradley avec le seuillage par image intégrale
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| brightnessDifference | double | La différence de luminosité entre le pixel et la moyenne d’une fenêtre de s × s pixels centrée sur ce pixel. |
binarizeBradley(double brightnessDifference, int windowSize)
public void binarizeBradley(double brightnessDifference, int windowSize)
Binarisation d’une image en utilisant l’algorithme de seuillage adaptatif de Bradley avec le seuillage par image intégrale
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| brightnessDifference | double | La différence de luminosité entre le pixel et la moyenne d’une fenêtre de s × s pixels centrée sur ce pixel. |
| windowSize | int | La taille de la fenêtre de s × s pixels centrée sur ce pixel |
Example: The following example binarizes a raster image with Bradley’s adaptive thresholding algorithm with the specified window size. L’exemple suivant binarise une image raster avec l’algorithme de seuillage adaptatif de Bradley, avec la taille de fenêtre spécifiée. Les images binarisées ne contiennent que 2 couleurs - le noir et le blanc.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Binarisez l'image avec une différence de luminosité de 5. La luminosité est une différence entre un pixel et la moyenne d'une fenêtre de 10 x 10 pixels centrée sur ce pixel.
rasterImage.binarizeBradley(5, 10);
rasterImage.save(dir + "sample.BinarizeBradley5_10x10.png");
} finally {
image.dispose();
}
blend(Point origin, RasterImage overlay, Rectangle overlayArea)
public final void blend(Point origin, RasterImage overlay, Rectangle overlayArea)
Mélange cette instance d’image avec l’image overlay.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| origin | Point | L’origine du mélange de l’image d’arrière-plan. |
| overlay | RasterImage | L’image de superposition. |
| overlayArea | Rectangle | La zone de superposition. |
blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha)
public void blend(Point origin, RasterImage overlay, Rectangle overlayArea, byte overlayAlpha)
Mélange cette instance d’image avec l’image overlay.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| origin | Point | L’origine du mélange de l’image d’arrière-plan. |
| overlay | RasterImage | L’image de superposition. |
| overlayArea | Rectangle | La zone de superposition. |
| overlayAlpha | byte | L’alpha de superposition. |
blend(Point origin, RasterImage overlay)
public final void blend(Point origin, RasterImage overlay)
Mélange cette instance d’image avec le overlay avec alpha == 255.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| origin | Point | L’origine du mélange de l’image d’arrière-plan. |
| overlay | RasterImage | La superposition. |
blend(Point origin, RasterImage overlay, byte overlayAlpha)
public final void blend(Point origin, RasterImage overlay, byte overlayAlpha)
Mélange cette instance d’image avec le overlay.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| origin | Point | L’origine du mélange de l’image d’arrière-plan. |
| overlay | RasterImage | La superposition. |
| overlayAlpha | byte | L’alpha de superposition. |
grayscale()
public void grayscale()
Transformation d’une image en sa représentation en niveaux de gris
Example: The following example transforms a colored raster image to its grayscale representation. L’exemple suivant transforme une image raster couleur en sa représentation en niveaux de gris. Les images en niveaux de gris sont composées exclusivement de nuances de gris et ne contiennent que des informations d’intensité.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
rasterImage.grayscale();
rasterImage.save(dir + "sample.Grayscale.png");
} finally {
image.dispose();
}
normalizeHistogram()
public void normalizeHistogram()
Normalise l’histogramme de l’image \u2014 ajuste les valeurs des pixels pour utiliser toute la plage disponible.
autoBrightnessContrast()
public void autoBrightnessContrast()
Normalisation automatique adaptative de la luminosité et du contraste pour l’image entière.
adjustBrightness(int brightness)
public void adjustBrightness(int brightness)
Ajustement de la luminosité d’une image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| brightness | int | Valeur de luminosité. |
Example: The following example performs brightness correction of an image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définissez la valeur de luminosité. Les valeurs acceptées de luminosité sont dans la plage [-255, 255].
rasterImage.adjustBrightness(50);
rasterImage.save(dir + "sample.AdjustBrightness.png");
} finally {
image.dispose();
}
adjustContrast(float contrast)
public void adjustContrast(float contrast)
Contraste d’image
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| contrast | float | Valeur de contraste (dans la plage [-100 ; 100]) |
Example: The following example performs contrast correction of an image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définissez la valeur de contraste. Les valeurs acceptées de contraste sont dans la plage [-100f, 100f].
rasterImage.adjustContrast(50);
rasterImage.save(dir + "sample.AdjustContrast.png");
} finally {
image.dispose();
}
embedDigitalSignature(String password)
public void embedDigitalSignature(String password)
Intégrer une signature numérique basée sur le mot de passe fourni dans l’image en utilisant la stéganographie.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| mot de passe | java.lang.String | Le mot de passe utilisé pour générer les données de signature numérique |
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)
Calcule le pourcentage de similarité entre les données extraites et le mot de passe original.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| mot de passe | java.lang.String | Le mot de passe utilisé pour extraire les données incorporées. |
Returns: int - La valeur de pourcentage de similarité.
isDigitalSigned(String password)
public boolean isDigitalSigned(String password)
Effectue une vérification rapide pour déterminer si l’image est signée numériquement, en utilisant le mot de passe fourni et le seuil.
Cette méthode fournit la détection la plus rapide en utilisant GetSignPercentage. Une fois que les données extraites atteignent le seuil spécifié, les étapes d’extraction supplémentaires visant à améliorer la précision de la détection sont ignorées.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| mot de passe | java.lang.String | Le mot de passe pour vérifier la signature. |
Returns: boolean - Vrai si l’image est signée, sinon faux.
isDigitalSigned(String password, int percentageThreshold)
public boolean isDigitalSigned(String password, int percentageThreshold)
Effectue une vérification rapide pour déterminer si l’image est signée numériquement, en utilisant le mot de passe fourni et le seuil.
Cette méthode fournit la détection la plus rapide en utilisant GetSignPercentage. Une fois que les données extraites atteignent le seuil spécifié, les étapes d’extraction supplémentaires visant à améliorer la précision de la détection sont ignorées.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| mot de passe | java.lang.String | Le mot de passe pour vérifier la signature. |
| percentageThreshold | int | Le seuil (en pourcentage)[0-100] qui détermine si l’image est considérée comme signée. Si non spécifié, un seuil par défaut (75) sera appliqué. |
Returns: boolean - Vrai si l’image est signée, sinon faux.
adjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
public void adjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Correction gamma d’une image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| gammaRed | float | Coefficient gamma pour le canal rouge |
| gammaGreen | float | Coefficient gamma pour le canal vert |
| gammaBlue | float | Gamma pour le coefficient du canal bleu |
Example: The following example performs gamma-correction of an 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.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définir les coefficients gamma individuels pour les canaux rouge, vert et bleu.
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)
Correction gamma d’une image.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| gamma | float | Coefficient gamma pour les canaux rouge, vert et bleu |
Example: The following example performs gamma-correction of an image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Définir le coefficient gamma pour les canaux rouge, vert et bleu.
rasterImage.adjustGamma(2.5f);
rasterImage.save(dir + "sample.AdjustGamma.png");
} finally {
image.dispose();
}
getSkewAngle()
public final float getSkewAngle()
Obtient l’angle d’inclinaison. Cette méthode s’applique aux documents texte numérisés, pour déterminer l’angle d’inclinaison lors de la numérisation.
Returns: float - L’angle d’inclinaison, en degrés.
normalizeAngle()
public final void normalizeAngle()
Normalise l’angle. Cette méthode s’applique aux documents texte numérisés pour éliminer la numérisation inclinée. Cette méthode utilise #getSkewAngle.getSkewAngle et les méthodes Image.rotate(float).
normalizeAngle(boolean resizeProportionally, Color backgroundColor)
public void normalizeAngle(boolean resizeProportionally, Color backgroundColor)
Normalise l’angle. Cette méthode s’applique aux documents texte numérisés pour éliminer la numérisation inclinée. Cette méthode utilise #getSkewAngle.getSkewAngle et les méthodes #rotate(float, boolean, Color).rotate(float, boolean, Color).
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| resizeProportionally | boolean | si défini sur true, la taille de votre image sera modifiée selon les projections du rectangle pivoté (points d’angle) ; dans le cas contraire, les dimensions restent inchangées et seul le contenu interne de l’image est pivoté. |
| backgroundColor | Color | Couleur de l’arrière-plan. |
Example: Skew is an artifact that might appear during document scanning process when the text/images of the document get rotated at a slight angle. Le biais est un artefact qui peut apparaître lors du processus de numérisation d’un document lorsque le texte/les images du document sont légèrement tournés. Il peut avoir diverses causes, mais la plus courante est que le papier soit mal positionné pendant la numérisation. Par conséquent, le deskew est le processus de détection et de correction de ce problème sur les fichiers numérisés (c.-à-d. bitmap) afin que les documents deskewed aient le texte/les images correctement et horizontalement ajustés.
String dir = "c:\\aspose.imaging\\issues\\java\\1461\\";
String inputFilePath = dir + "skewed.png";
String outputFilePath = dir + "skewed.out.png";
// Éliminez la numérisation inclinée avec les paramètres par défaut
com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(inputFilePath);
try {
// Deskew
image.normalizeAngle(false /*do not resize*/, com.aspose.imaging.Color.getLightGray() /*background color*/);
image.save(outputFilePath);
} finally {
image.close();
}
filter(Rectangle rectangle, FilterOptionsBase options)
public void filter(Rectangle rectangle, FilterOptionsBase options)
Filtre le rectangle spécifié.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| rectangle | Rectangle | Le rectangle. |
| options | FilterOptionsBase | Les options. |
Example: The following example applies various types of filters to a raster image.
String dir = "c:\\temp\\";
com.aspose.imaging.Image image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre médian avec une taille de rectangle de 5 à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.MedianFilterOptions(5));
rasterImage.save(dir + "sample.MedianFilter.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre de lissage bilatéral avec une taille de noyau de 5 à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.BilateralSmoothingFilterOptions(5));
rasterImage.save(dir + "sample.BilateralSmoothingFilter.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre de flou gaussien avec un rayon de 5 et une valeur sigma de 4,0 à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.GaussianBlurFilterOptions(5, 4.0));
rasterImage.save(dir + "sample.GaussianBlurFilter.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre Gauss-Wiener avec un rayon de 5 et une valeur de lissage de 4,0 à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.GaussWienerFilterOptions(5, 4.0));
rasterImage.save(dir + "sample.GaussWienerFilter.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre wiener de mouvement avec une longueur de 5, une valeur de lissage de 4,0 et un angle de 90,0 degrés à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.MotionWienerFilterOptions(10, 1.0, 90.0));
rasterImage.save(dir + "sample.MotionWienerFilter.png");
} finally {
image.dispose();
}
image = com.aspose.imaging.Image.load(dir + "sample.png");
try {
com.aspose.imaging.RasterImage rasterImage = (com.aspose.imaging.RasterImage) image;
// Appliquez un filtre d'accentuation avec une taille de noyau de 5 et une valeur sigma de 4,0 à l'ensemble de l'image.
rasterImage.filter(rasterImage.getBounds(), new com.aspose.imaging.imagefilters.filteroptions.SharpenFilterOptions(5, 4.0));
rasterImage.save(dir + "sample.SharpenFilter.png");
} finally {
image.dispose();
}
replaceColor(Color oldColor, byte oldColorDiff, Color newColor)
public void replaceColor(Color oldColor, byte oldColorDiff, Color newColor)
Remplace une couleur par une autre avec une différence autorisée et préserve la valeur alpha originale pour conserver des bords lisses.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| oldColor | Color | Ancienne couleur à remplacer. |
| oldColorDiff | byte | Différence autorisée dans l’ancienne couleur pour pouvoir élargir la teinte de couleur remplacée. |
| newColor | Color | Nouvelle couleur avec laquelle remplacer l’ancienne couleur. |
replaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb)
public void replaceColor(int oldColorArgb, byte oldColorDiff, int newColorArgb)
Remplace une couleur par une autre avec une différence autorisée et préserve la valeur alpha originale pour conserver des bords lisses.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| oldColorArgb | int | Valeur ARGB de l’ancienne couleur à remplacer. |
| oldColorDiff | byte | Différence autorisée dans l’ancienne couleur pour pouvoir élargir la teinte de couleur remplacée. |
| newColorArgb | int | Nouvelle valeur ARGB de couleur pour remplacer l’ancienne couleur. |
replaceNonTransparentColors(Color newColor)
public void replaceNonTransparentColors(Color newColor)
Remplace toutes les couleurs non transparentes par la nouvelle couleur et préserve la valeur alpha originale pour conserver des bords lisses. Remarque : si vous l’utilisez sur des images sans transparence, toutes les couleurs seront remplacées par une seule.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| newColor | Color | Nouvelle couleur avec laquelle remplacer les couleurs non transparentes. |
replaceNonTransparentColors(int newColorArgb)
public void replaceNonTransparentColors(int newColorArgb)
Remplace toutes les couleurs non transparentes par la nouvelle couleur et préserve la valeur alpha originale pour conserver des bords lisses. Remarque : si vous l’utilisez sur des images sans transparence, toutes les couleurs seront remplacées par une seule.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| newColorArgb | int | Nouvelle valeur ARGB de couleur pour remplacer les couleurs non transparentes. |