Added function: ImageColorReplace()
This commit is contained in:
parent
7b971e0623
commit
74fd0e7ca4
4 changed files with 32 additions and 0 deletions
|
@ -937,6 +937,7 @@ RLAPI void ImageColorInvert(Image *image);
|
||||||
RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale
|
RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale
|
||||||
RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100)
|
RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100)
|
||||||
RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255)
|
RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255)
|
||||||
|
RLAPI void ImageColorReplace(Image *image, Color color, Color replace); // Modify image color: replace color
|
||||||
|
|
||||||
// Image generation functions
|
// Image generation functions
|
||||||
RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color
|
RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color
|
||||||
|
|
Binary file not shown.
|
@ -937,6 +937,7 @@ RLAPI void ImageColorInvert(Image *image);
|
||||||
RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale
|
RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale
|
||||||
RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100)
|
RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100)
|
||||||
RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255)
|
RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255)
|
||||||
|
RLAPI void ImageColorReplace(Image *image, Color color, Color replace); // Modify image color: replace color
|
||||||
|
|
||||||
// Image generation functions
|
// Image generation functions
|
||||||
RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color
|
RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color
|
||||||
|
|
|
@ -1901,6 +1901,36 @@ void ImageColorBrightness(Image *image, int brightness)
|
||||||
|
|
||||||
image->data = processed.data;
|
image->data = processed.data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Modify image color: replace color
|
||||||
|
void ImageColorReplace(Image *image, Color color, Color replace)
|
||||||
|
{
|
||||||
|
Color *pixels = GetImageData(*image);
|
||||||
|
|
||||||
|
for (int y = 0; y < image->height; y++)
|
||||||
|
{
|
||||||
|
for (int x = 0; x < image->width; x++)
|
||||||
|
{
|
||||||
|
if ((pixels[y*image->width + x].r == color.r) &&
|
||||||
|
(pixels[y*image->width + x].g == color.g) &&
|
||||||
|
(pixels[y*image->width + x].b == color.b) &&
|
||||||
|
(pixels[y*image->width + x].a == color.a))
|
||||||
|
{
|
||||||
|
pixels[y*image->width + x].r = replace.r;
|
||||||
|
pixels[y*image->width + x].g = replace.g;
|
||||||
|
pixels[y*image->width + x].b = replace.b;
|
||||||
|
pixels[y*image->width + x].a = replace.a;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Image processed = LoadImageEx(pixels, image->width, image->height);
|
||||||
|
ImageFormat(&processed, image->format);
|
||||||
|
UnloadImage(*image);
|
||||||
|
free(pixels);
|
||||||
|
|
||||||
|
image->data = processed.data;
|
||||||
|
}
|
||||||
#endif // SUPPORT_IMAGE_MANIPULATION
|
#endif // SUPPORT_IMAGE_MANIPULATION
|
||||||
|
|
||||||
#if defined(SUPPORT_IMAGE_GENERATION)
|
#if defined(SUPPORT_IMAGE_GENERATION)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue