Classe ColorPaletteHelper
Summary: Helper class for color palettes manipulation.
Module: aspose.imaging
Full Name: aspose.imaging.ColorPaletteHelper
Methods
| Name | Description |
|---|---|
| create_4_bit() | Crée la palette de couleurs 4 bits. |
| create_4_bit_grayscale(min_is_white) | Crée la palette de niveaux de gris 4 bits. |
| create_8_bit() | Crée la palette de couleurs 8 bits. |
| create_8_bit_grayscale(min_is_white) | Crée la palette de niveaux de gris 8 bits. |
| create_grayscale(bits) | Obtient la palette de niveaux de gris du nombre de bits spécifié. Les valeurs de bits autorisées sont 1, 2, 4, 8. |
| create_monochrome() | Crée une palette de couleurs monochrome contenant uniquement 2 couleurs. |
| get_close_image_palette(image, dest_bounds, entries_count) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_image_palette(image, dest_bounds, entries_count, use_image_palette) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color, keep_transparency) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_image_palette(image, entries_count) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_image_palette(image, entries_count, palette_mining_method) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. La palette est sur le point d’être optimisée pour une meilleure qualité d’image indexée ou prise “EN L’ÉTAT” lorsque PaletteMiningMethod.UseCurrentPalette est utilisé. |
| get_close_image_palette_by_method(image, entries_count, palette_mining_method) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. La palette est sur le point d’être optimisée pour une meilleure qualité d’image indexée ou prise “EN L’ÉTAT” lorsque PaletteMiningMethod.UseCurrentPalette est utilisé. |
| get_close_image_palette_by_rect(image, dest_bounds, entries_count) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_close_transparent_image_palette(image, entries_count) | Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs. |
| get_downscale_palette(image) | Obtenir une palette de 256 couleurs, composée des bits supérieurs des valeurs de couleur de l’image initiale. |
| get_uniform_color_palette(image) | Obtenir une palette uniforme de 256 couleurs. |
| has_transparent_colors(palette) | Détermine si la palette spécifiée contient des couleurs transparentes. |
Method: create_4_bit() [static]
create_4_bit()
Crée la palette de couleurs 4 bits.
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs 4 bits. |
Method: create_4_bit_grayscale(min_is_white) [static]
create_4_bit_grayscale(min_is_white)
Crée la palette de niveaux de gris 4 bits.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| min_is_white | bool | si réglé sur |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de niveaux de gris 4 bits. |
Method: create_8_bit() [static]
create_8_bit()
Crée la palette de couleurs 8 bits.
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs 8 bits. |
Method: create_8_bit_grayscale(min_is_white) [static]
create_8_bit_grayscale(min_is_white)
Crée la palette de niveaux de gris 8 bits.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| min_is_white | bool | si réglé sur |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de niveaux de gris 8 bits. |
Method: create_grayscale(bits) [static]
create_grayscale(bits)
Obtient la palette de niveaux de gris du nombre de bits spécifié. Les valeurs de bits autorisées sont 1, 2, 4, 8.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| bits | int | Le nombre de bits. |
Returns
| Type | Description |
|---|---|
| IColorPalette | Palette de niveaux de gris. |
Method: create_monochrome() [static]
create_monochrome()
Crée une palette de couleurs monochrome contenant uniquement 2 couleurs.
Returns
| Type | Description |
|---|---|
| IColorPalette | Palette de couleurs pour images monochromes. |
Method: get_close_image_palette(image, dest_bounds, entries_count) [static]
get_close_image_palette(image, dest_bounds, entries_count)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| dest_bounds | Rectangle | Les limites de l’image de destination. |
| entries_count | int | Le nombre d’entrées souhaité. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_image_palette(image, dest_bounds, entries_count, use_image_palette) [static]
get_close_image_palette(image, dest_bounds, entries_count, use_image_palette)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| dest_bounds | Rectangle | Les limites de l’image de destination. |
| entries_count | int | Le nombre d’entrées souhaité. |
| use_image_palette | bool | Si défini, il utilisera sa propre palette d’image si disponible |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color) [static]
get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| dest_bounds | Rectangle | Les limites de l’image de destination. |
| entries_count | int | Le nombre d’entrées souhaité. |
| use_image_palette | bool | Si défini, il utilisera sa propre palette d’image si disponible |
| alpha_blend_in_color | Color | La couleur qui doit être utilisée comme couleur d’arrière-plan pour le remplacement alpha semi-transparent. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color, keep_transparency) [static]
get_close_image_palette(image, dest_bounds, entries_count, use_image_palette, alpha_blend_in_color, keep_transparency)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| dest_bounds | Rectangle | Les limites de l’image de destination. |
| entries_count | int | Le nombre d’entrées souhaité. |
| use_image_palette | bool | Si défini, il utilisera sa propre palette d’image si disponible |
| alpha_blend_in_color | Color | La couleur qui doit être utilisée comme couleur d’arrière-plan pour le remplacement alpha semi-transparent. |
| keep_transparency | bool | Si elle est définie, elle considérera les bits du canal alpha des couleurs de l’image. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_image_palette(image, entries_count) [static]
get_close_image_palette(image, entries_count)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| entries_count | int | Le nombre d’entrées souhaité. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
See also:
Example # 1: The following example shows how to set a palette to a BMP image to reduce its…
Example # 2: The following example loads a BMP image and saves it back to BMP using variou…
Method: get_close_image_palette(image, entries_count, palette_mining_method) [static]
get_close_image_palette(image, entries_count, palette_mining_method)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. La palette est sur le point d’être optimisée pour une meilleure qualité d’image indexée ou prise “EN L’ÉTAT” lorsque PaletteMiningMethod.UseCurrentPalette est utilisé.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| entries_count | int | Le nombre d’entrées souhaité. |
| palette_mining_method | PaletteMiningMethod | La méthode d’extraction de palette. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
See also:
Example # 1: The following example shows how to compress a PNG image, using indexed color …
Method: get_close_image_palette_by_method(image, entries_count, palette_mining_method) [static]
get_close_image_palette_by_method(image, entries_count, palette_mining_method)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. La palette est sur le point d’être optimisée pour une meilleure qualité d’image indexée ou prise “EN L’ÉTAT” lorsque PaletteMiningMethod.UseCurrentPalette est utilisé.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| entries_count | int | Le nombre d’entrées souhaité. |
| palette_mining_method | PaletteMiningMethod | La méthode d’extraction de palette. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_image_palette_by_rect(image, dest_bounds, entries_count) [static]
get_close_image_palette_by_rect(image, dest_bounds, entries_count)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| dest_bounds | Rectangle | Les limites de l’image de destination. |
| entries_count | int | Le nombre d’entrées souhaité. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_close_transparent_image_palette(image, entries_count) [static]
get_close_transparent_image_palette(image, entries_count)
Obtient la palette de couleurs à partir de l’image raster (palettise l’image) si l’image n’en possède pas. Si une palette existe, elle sera utilisée au lieu d’effectuer des calculs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image raster. |
| entries_count | int | Le nombre d’entrées souhaité. |
Returns
| Type | Description |
|---|---|
| IColorPalette | La palette de couleurs qui commence avec les couleurs les plus fréquentes de l’image et contient entriesCount entrées. |
Method: get_downscale_palette(image) [static]
get_downscale_palette(image)
Obtenir une palette de 256 couleurs, composée des bits supérieurs des valeurs de couleur de l’image initiale.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image. |
Returns
| Type | Description |
|---|---|
| ColorPalette | Le ColorPalette. |
Method: get_uniform_color_palette(image) [static]
get_uniform_color_palette(image)
Obtenir une palette uniforme de 256 couleurs.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| image | RasterImage | L’image. |
Returns
| Type | Description |
|---|---|
| ColorPalette | Le ColorPalette. |
Method: has_transparent_colors(palette) [static]
has_transparent_colors(palette)
Détermine si la palette spécifiée contient des couleurs transparentes.
Parameters:
| Paramètre | Type | Description |
|---|---|---|
| palette | IColorPalette | La palette. |
Returns
| Type | Description |
|---|---|
| bool |
Examples
The following example shows how to set a palette to a BMP image to reduce its output size.
from aspose.pycore import as_of
from aspose.imaging import Point, Color, Graphics, ColorPaletteHelper
from aspose.imaging.brushes import LinearGradientBrush
from aspose.imaging.fileformats.bmp import BmpImage
from aspose.imaging.imageoptions import BmpOptions
from os.path import join as path_join
# Créez une image BMP de 100 x 100 px.
with BmpImage(100, 100) as bmpImage:
# Le dégradé linéaire du coin supérieur gauche au coin inférieur droit de l'image.
brush = LinearGradientBrush(Point(0, 0), Point(bmpImage.width, bmpImage.height),
Color.red,
Color.green)
# Remplissez toute l'image avec le pinceau de dégradé linéaire.
gr = Graphics(bmpImage)
gr.fill_rectangle(brush, bmpImage.bounds)
# Obtenez la palette de couleurs 8 bits la plus proche qui couvre le plus grand nombre de pixels possible, afin qu'une image à palette
# est presque visuellement indiscernable d'un BMP sans palette
palette = ColorPaletteHelper.get_close_image_palette(bmpImage, 256)
# Une palette 8 bits contient au maximum 256 couleurs.
saveOptions = BmpOptions()
saveOptions.palette = palette
saveOptions.bits_per_pixel = 8
with stream_ext.create_memory_stream() as stream:
bmpImage.save(stream, saveOptions)
print(f"The size of image with palette is {stream.tell()} bytes.")
stream.seek(0)
bmpImage.save(stream)
print(f"The size of image without palette is {stream.tell()} bytes.")
# La sortie ressemble à ceci :
# La taille de l'image avec palette est de 11078 octets.
# La taille de l'image sans palette est de 40054 octets.
The following example shows how to compress a PNG image, using indexed color with best fit palette
from aspose.pycore import as_of
from aspose.imaging import Image, ColorPaletteHelper, RasterImage, PaletteMiningMethod
from aspose.imaging.fileformats.png import PngColorType
# Charge l'image png
sourceFilePath = "OriginalRings.png"
outputFilePath = "OriginalRingsOutput.png"
with Image.load(sourceFilePath) as image:
png_options = PngOptions()
png_options.progressive = True
# Utilisez le type de couleur indexée
png_options.color_type = PngColorType.INDEXED_COLOR
# Utilisez une compression maximale
png_options.compression_level = 9
# Obtenez la palette de couleurs 8 bits la plus proche, couvrant le plus grand nombre de pixels possible, afin qu'une image
# avec palette soit presque visuellement indiscernable d'une image sans palette.
png_options.palette = ColorPaletteHelper.get_close_image_palette(
as_of(image, RasterImage), 256,
PaletteMiningMethod.HISTOGRAM)
image.save(outputFilePath, png_options);
}
# La taille du fichier de sortie devrait être considérablement réduite
The following example loads a BMP image and saves it back to BMP using various save options.
from aspose.imaging import Image, RasterImage, ColorPaletteHelper, ResolutionSetting
from aspose.imaging.imageoptions import BmpOptions
from aspose.imaging.fileformats.bmp import BitmapCompression
import os
import aspose.pycore as aspycore
directory = "c:\\temp\\"
with Image.load(os.path.join(directory, "sample.bmp")) as image:
rasterImage = aspycore.as_of(image, RasterImage)
# Créez BmpOptions
saveOptions = BmpOptions()
# Utilisez 8 bits par pixel pour réduire la taille de l'image de sortie.
saveOptions.bits_per_pixel = 8
# Définissez la palette de couleurs 8 bits la plus proche qui couvre le nombre maximal de pixels de l'image, afin qu'une image à palette
# est presque visuellement indiscernable d'une version non palettisée.
saveOptions.palette = ColorPaletteHelper.get_close_image_palette(rasterImage, 256)
# Enregistrer sans compression.
# Vous pouvez également utiliser la compression RLE-8 pour réduire la taille de l'image de sortie.
saveOptions.compression = BitmapCompression.RGB
# Définissez la résolution horizontale et verticale à 96 dpi.
saveOptions.resolution_settings = ResolutionSetting(96.0, 96.0)
image.save(os.path.join(directory, "sample.bmpoptions.bmp"), saveOptions)