mirror of https://github.com/GNOME/gimp.git
parent
ba3f196538
commit
e192fcfe43
|
@ -1,3 +1,8 @@
|
|||
Sat Oct 16 05:48:44 MEST 1999 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* plug-ins/common/compose.c
|
||||
* plug-ins/common/decompose.c: use gimp_message where appropriate
|
||||
|
||||
Thu Oct 14 13:31:59 MEST 1999 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* plug-ins/common/sunras.c
|
||||
|
|
|
@ -256,7 +256,7 @@ static void show_message (const char *message)
|
|||
|
||||
{
|
||||
if (run_mode == RUN_INTERACTIVE)
|
||||
g_message (message);
|
||||
gimp_message (message);
|
||||
else
|
||||
printf ("%s\n", message);
|
||||
}
|
||||
|
@ -383,8 +383,8 @@ static gint32
|
|||
compose (char *compose_type,
|
||||
gint32 *compose_ID,
|
||||
int compose_by_drawable)
|
||||
|
||||
{int width, height, tile_height, scan_lines;
|
||||
{
|
||||
int width, height, tile_height, scan_lines;
|
||||
int num_images, compose_idx, incr_src[MAX_COMPOSE_IMAGES];
|
||||
int i, j;
|
||||
gint num_layers;
|
||||
|
@ -494,7 +494,8 @@ compose (char *compose_type,
|
|||
dst = (unsigned char *)g_malloc (tile_height * width * drawable_dst->bpp);
|
||||
if (dst == NULL)
|
||||
{
|
||||
for (j = 0; j < num_images; j++) g_free (src[j]);
|
||||
for (j = 0; j < num_images; j++)
|
||||
g_free (src[j]);
|
||||
show_message (_("compose: not enough memory"));
|
||||
return (-1);
|
||||
}
|
||||
|
@ -545,8 +546,8 @@ create_new_image (char *filename,
|
|||
gint32 *layer_ID,
|
||||
GDrawable **drawable,
|
||||
GPixelRgn *pixel_rgn)
|
||||
|
||||
{gint32 image_ID;
|
||||
{
|
||||
gint32 image_ID;
|
||||
GImageType gitype;
|
||||
|
||||
if ((gdtype == GRAY_IMAGE) || (gdtype == GRAYA_IMAGE))
|
||||
|
@ -573,9 +574,11 @@ create_new_image (char *filename,
|
|||
|
||||
/* Compare two strings ignoring case (could also be done by strcasecmp() */
|
||||
/* but is it available everywhere ?) */
|
||||
static int cmp_icase (char *s1, char *s2)
|
||||
|
||||
{int c1, c2;
|
||||
static int
|
||||
cmp_icase (char *s1,
|
||||
char *s2)
|
||||
{
|
||||
int c1, c2;
|
||||
|
||||
c1 = toupper (*s1); c2 = toupper (*s2);
|
||||
while (*s1 && *s2)
|
||||
|
@ -592,8 +595,8 @@ compose_rgb (unsigned char **src,
|
|||
int *incr_src,
|
||||
int numpix,
|
||||
unsigned char *dst)
|
||||
|
||||
{register unsigned char *red_src = src[0];
|
||||
{
|
||||
register unsigned char *red_src = src[0];
|
||||
register unsigned char *green_src = src[1];
|
||||
register unsigned char *blue_src = src[2];
|
||||
register unsigned char *rgb_dst = dst;
|
||||
|
@ -626,8 +629,8 @@ compose_rgba (unsigned char **src,
|
|||
int *incr_src,
|
||||
int numpix,
|
||||
unsigned char *dst)
|
||||
|
||||
{register unsigned char *red_src = src[0];
|
||||
{
|
||||
register unsigned char *red_src = src[0];
|
||||
register unsigned char *green_src = src[1];
|
||||
register unsigned char *blue_src = src[2];
|
||||
register unsigned char *alpha_src = src[3];
|
||||
|
@ -665,8 +668,8 @@ compose_hsv (unsigned char **src,
|
|||
int *incr_src,
|
||||
int numpix,
|
||||
unsigned char *dst)
|
||||
|
||||
{register unsigned char *hue_src = src[0];
|
||||
{
|
||||
register unsigned char *hue_src = src[0];
|
||||
register unsigned char *sat_src = src[1];
|
||||
register unsigned char *val_src = src[2];
|
||||
register unsigned char *rgb_dst = dst;
|
||||
|
@ -689,8 +692,8 @@ compose_cmy (unsigned char **src,
|
|||
int *incr_src,
|
||||
int numpix,
|
||||
unsigned char *dst)
|
||||
|
||||
{register unsigned char *cyan_src = src[0];
|
||||
{
|
||||
register unsigned char *cyan_src = src[0];
|
||||
register unsigned char *magenta_src = src[1];
|
||||
register unsigned char *yellow_src = src[2];
|
||||
register unsigned char *rgb_dst = dst;
|
||||
|
@ -698,7 +701,7 @@ compose_cmy (unsigned char **src,
|
|||
int cyan_incr = incr_src[0], magenta_incr = incr_src[1],
|
||||
yellow_incr = incr_src[2];
|
||||
|
||||
if ( (cyan_incr == 1) && (magenta_incr == 1) && (yellow_incr == 1))
|
||||
if ((cyan_incr == 1) && (magenta_incr == 1) && (yellow_incr == 1))
|
||||
{
|
||||
while (count-- > 0)
|
||||
{
|
||||
|
@ -727,8 +730,8 @@ compose_cmyk (unsigned char **src,
|
|||
int *incr_src,
|
||||
int numpix,
|
||||
unsigned char *dst)
|
||||
|
||||
{register unsigned char *cyan_src = src[0];
|
||||
{
|
||||
register unsigned char *cyan_src = src[0];
|
||||
register unsigned char *magenta_src = src[1];
|
||||
register unsigned char *yellow_src = src[2];
|
||||
register unsigned char *black_src = src[3];
|
||||
|
@ -935,8 +938,8 @@ hsv_to_rgb (unsigned char *h,
|
|||
unsigned char *s,
|
||||
unsigned char *v,
|
||||
unsigned char *rgb)
|
||||
|
||||
{double hue, sat, val;
|
||||
{
|
||||
double hue, sat, val;
|
||||
double f, p, q, t;
|
||||
int red, green, blue;
|
||||
|
||||
|
@ -993,9 +996,20 @@ hsv_to_rgb (unsigned char *h,
|
|||
blue = 0;
|
||||
break;
|
||||
}
|
||||
if (red < 0) red = 0; else if (red > 255) red = 255;
|
||||
if (green < 0) green = 0; else if (green > 255) green = 255;
|
||||
if (blue < 0) blue = 0; else if (blue > 255) blue = 255;
|
||||
|
||||
if (red < 0)
|
||||
red = 0;
|
||||
else if (red > 255)
|
||||
red = 255;
|
||||
if (green < 0)
|
||||
green = 0;
|
||||
else if (green > 255)
|
||||
green = 255;
|
||||
if (blue < 0)
|
||||
blue = 0;
|
||||
else if (blue > 255)
|
||||
blue = 255;
|
||||
|
||||
rgb[0] = (unsigned char)red;
|
||||
rgb[1] = (unsigned char)green;
|
||||
rgb[2] = (unsigned char)blue;
|
||||
|
@ -1010,7 +1024,7 @@ check_gray (gint32 image_id,
|
|||
gpointer data)
|
||||
|
||||
{
|
||||
return ( (gimp_image_base_type (image_id) == GRAY)
|
||||
return ((gimp_image_base_type (image_id) == GRAY)
|
||||
&& (gimp_image_width (image_id) == composeint.width)
|
||||
&& (gimp_image_height (image_id) == composeint.height));
|
||||
}
|
||||
|
@ -1081,3 +1095,11 @@ compose_type_toggle_update (GtkWidget *widget,
|
|||
else
|
||||
*toggle_val = FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -229,7 +229,7 @@ query ()
|
|||
static void show_message (const char *message)
|
||||
{
|
||||
if (run_mode == RUN_INTERACTIVE)
|
||||
g_message (message);
|
||||
gimp_message (message);
|
||||
else
|
||||
printf ("%s\n", message);
|
||||
}
|
||||
|
@ -345,7 +345,6 @@ decompose (gint32 image_ID,
|
|||
gint32 drawable_ID,
|
||||
char *extract_type,
|
||||
gint32 *image_ID_dst)
|
||||
|
||||
{
|
||||
int i, j, extract_idx, scan_lines;
|
||||
int height, width, tile_height, num_images;
|
||||
|
@ -374,8 +373,8 @@ decompose (gint32 image_ID,
|
|||
show_message (_("decompose: not an RGB image"));
|
||||
return (-1);
|
||||
}
|
||||
if ( (extract[extract_idx].extract_fun == extract_alpha)
|
||||
&& (!gimp_drawable_has_alpha (drawable_ID)))
|
||||
if ((extract[extract_idx].extract_fun == extract_alpha) &&
|
||||
(!gimp_drawable_has_alpha (drawable_ID)))
|
||||
{
|
||||
show_message (_("decompose: No alpha channel available"));
|
||||
return (-1);
|
||||
|
@ -393,7 +392,8 @@ decompose (gint32 image_ID,
|
|||
|
||||
/* Create all new gray images */
|
||||
num_images = extract[extract_idx].num_images;
|
||||
if (num_images > MAX_EXTRACT_IMAGES) num_images = MAX_EXTRACT_IMAGES;
|
||||
if (num_images > MAX_EXTRACT_IMAGES)
|
||||
num_images = MAX_EXTRACT_IMAGES;
|
||||
|
||||
for (j = 0; j < num_images; j++)
|
||||
{
|
||||
|
@ -458,13 +458,16 @@ create_new_image (char *filename,
|
|||
gint32 *layer_ID,
|
||||
GDrawable **drawable,
|
||||
GPixelRgn *pixel_rgn)
|
||||
|
||||
{gint32 image_ID;
|
||||
{
|
||||
gint32 image_ID;
|
||||
GDrawableType gdtype;
|
||||
|
||||
if (type == GRAY) gdtype = GRAY_IMAGE;
|
||||
else if (type == INDEXED) gdtype = INDEXED_IMAGE;
|
||||
else gdtype = RGB_IMAGE;
|
||||
if (type == GRAY)
|
||||
gdtype = GRAY_IMAGE;
|
||||
else if (type == INDEXED)
|
||||
gdtype = INDEXED_IMAGE;
|
||||
else
|
||||
gdtype = RGB_IMAGE;
|
||||
|
||||
image_ID = gimp_image_new (width, height, type);
|
||||
gimp_image_set_filename (image_ID, filename);
|
||||
|
@ -483,14 +486,17 @@ create_new_image (char *filename,
|
|||
|
||||
/* Compare two strings ignoring case (could also be done by strcasecmp() */
|
||||
/* but is it available everywhere ?) */
|
||||
static int cmp_icase (char *s1, char *s2)
|
||||
|
||||
{int c1, c2;
|
||||
static int
|
||||
cmp_icase (char *s1,
|
||||
char *s2)
|
||||
{
|
||||
int c1, c2;
|
||||
|
||||
c1 = toupper (*s1); c2 = toupper (*s2);
|
||||
while (*s1 && *s2)
|
||||
{
|
||||
if (c1 != c2) return (c2 - c1);
|
||||
if (c1 != c2)
|
||||
return (c2 - c1);
|
||||
c1 = toupper (*(++s1)); c2 = toupper (*(++s2));
|
||||
}
|
||||
return (c2 - c1);
|
||||
|
@ -500,8 +506,13 @@ static int cmp_icase (char *s1, char *s2)
|
|||
/* Convert RGB to HSV. This routine was taken from decompose plug-in
|
||||
of GIMP V 0.54 and modified a little bit.
|
||||
*/
|
||||
static void rgb_to_hsv (unsigned char *r, unsigned char *g, unsigned char *b,
|
||||
unsigned char *h, unsigned char *s, unsigned char *v)
|
||||
static void
|
||||
rgb_to_hsv (unsigned char *r,
|
||||
unsigned char *g,
|
||||
unsigned char *b,
|
||||
unsigned char *h,
|
||||
unsigned char *s,
|
||||
unsigned char *v)
|
||||
|
||||
{
|
||||
int red = (int)*r, green = (int)*g, blue = (int)*b;
|
||||
|
@ -569,10 +580,13 @@ static void rgb_to_hsv (unsigned char *r, unsigned char *g, unsigned char *b,
|
|||
|
||||
/* Extract functions */
|
||||
|
||||
static void extract_rgb (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_rgb (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *red_dst = dst[0];
|
||||
register unsigned char *green_dst = dst[1];
|
||||
register unsigned char *blue_dst = dst[2];
|
||||
|
@ -588,10 +602,13 @@ static void extract_rgb (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_red (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_red (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *red_dst = dst[0];
|
||||
register int count = numpix, offset = bpp;
|
||||
|
||||
|
@ -603,10 +620,13 @@ static void extract_red (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_green (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_green (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src+1;
|
||||
{
|
||||
register unsigned char *rgb_src = src+1;
|
||||
register unsigned char *green_dst = dst[0];
|
||||
register int count = numpix, offset = bpp;
|
||||
|
||||
|
@ -618,10 +638,13 @@ static void extract_green (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_blue (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_blue (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src+2;
|
||||
{
|
||||
register unsigned char *rgb_src = src+2;
|
||||
register unsigned char *blue_dst = dst[0];
|
||||
register int count = numpix, offset = bpp;
|
||||
|
||||
|
@ -633,10 +656,13 @@ static void extract_blue (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_alpha (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_alpha (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src+3;
|
||||
{
|
||||
register unsigned char *rgb_src = src+3;
|
||||
register unsigned char *alpha_dst = dst[0];
|
||||
register int count = numpix, offset = bpp;
|
||||
|
||||
|
@ -648,10 +674,13 @@ static void extract_alpha (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_cmy (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_cmy (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *cyan_dst = dst[0];
|
||||
register unsigned char *magenta_dst = dst[1];
|
||||
register unsigned char *yellow_dst = dst[2];
|
||||
|
@ -667,10 +696,13 @@ static void extract_cmy (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_hsv (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_hsv (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *hue_dst = dst[0];
|
||||
register unsigned char *sat_dst = dst[1];
|
||||
register unsigned char *val_dst = dst[2];
|
||||
|
@ -684,10 +716,13 @@ static void extract_hsv (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_hue (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_hue (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *hue_dst = dst[0];
|
||||
unsigned char dmy;
|
||||
unsigned char *dummy = &dmy;
|
||||
|
@ -701,10 +736,13 @@ static void extract_hue (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_sat (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_sat (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *sat_dst = dst[0];
|
||||
unsigned char dmy;
|
||||
unsigned char *dummy = &dmy;
|
||||
|
@ -718,10 +756,13 @@ static void extract_sat (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_val (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_val (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *val_dst = dst[0];
|
||||
unsigned char dmy;
|
||||
unsigned char *dummy = &dmy;
|
||||
|
@ -735,10 +776,13 @@ static void extract_val (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_cyan (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_cyan (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *cyan_dst = dst[0];
|
||||
register int count = numpix, offset = bpp-1;
|
||||
|
||||
|
@ -750,10 +794,13 @@ static void extract_cyan (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_magenta (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_magenta (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src+1;
|
||||
{
|
||||
register unsigned char *rgb_src = src+1;
|
||||
register unsigned char *magenta_dst = dst[0];
|
||||
register int count = numpix, offset = bpp-1;
|
||||
|
||||
|
@ -765,10 +812,13 @@ static void extract_magenta (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_yellow (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_yellow (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src+2;
|
||||
{
|
||||
register unsigned char *rgb_src = src+2;
|
||||
register unsigned char *yellow_dst = dst[0];
|
||||
register int count = numpix, offset = bpp-1;
|
||||
|
||||
|
@ -780,10 +830,14 @@ static void extract_yellow (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_cmyk (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_cmyk (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *cyan_dst = dst[0];
|
||||
register unsigned char *magenta_dst = dst[1];
|
||||
register unsigned char *yellow_dst = dst[2];
|
||||
|
@ -795,9 +849,11 @@ static void extract_cmyk (unsigned char *src, int bpp, int numpix,
|
|||
{
|
||||
*cyan_dst = k = 255 - *(rgb_src++);
|
||||
*magenta_dst = s = 255 - *(rgb_src++);
|
||||
if (s < k) k = s;
|
||||
if (s < k)
|
||||
k = s;
|
||||
*yellow_dst = s = 255 - *(rgb_src++);
|
||||
if (s < k) k = s; /* Black intensity is minimum of c, m, y */
|
||||
if (s < k)
|
||||
k = s; /* Black intensity is minimum of c, m, y */
|
||||
if (k)
|
||||
{
|
||||
*cyan_dst -= k; /* Remove common part of c, m, y */
|
||||
|
@ -814,10 +870,13 @@ static void extract_cmyk (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_cyank (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_cyank (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *cyan_dst = dst[0];
|
||||
register unsigned char s, k;
|
||||
register int count = numpix, offset = bpp-3;
|
||||
|
@ -837,10 +896,13 @@ static void extract_cyank (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_magentak (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_magentak (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *magenta_dst = dst[0];
|
||||
register unsigned char s, k;
|
||||
register int count = numpix, offset = bpp-3;
|
||||
|
@ -849,10 +911,13 @@ static void extract_magentak (unsigned char *src, int bpp, int numpix,
|
|||
{
|
||||
k = 255 - *(rgb_src++); /* cyan */
|
||||
*magenta_dst = s = 255 - *(rgb_src++); /* magenta */
|
||||
if (s < k) k = s;
|
||||
if (s < k)
|
||||
k = s;
|
||||
s = 255 - *(rgb_src++); /* yellow */
|
||||
if (s < k) k = s;
|
||||
if (k) *magenta_dst -= k;
|
||||
if (s < k)
|
||||
k = s;
|
||||
if (k)
|
||||
*magenta_dst -= k;
|
||||
magenta_dst++;
|
||||
|
||||
rgb_src += offset;
|
||||
|
@ -860,10 +925,14 @@ static void extract_magentak (unsigned char *src, int bpp, int numpix,
|
|||
}
|
||||
|
||||
|
||||
static void extract_yellowk (unsigned char *src, int bpp, int numpix,
|
||||
static void
|
||||
extract_yellowk (unsigned char *src,
|
||||
int bpp,
|
||||
int numpix,
|
||||
unsigned char **dst)
|
||||
|
||||
{register unsigned char *rgb_src = src;
|
||||
{
|
||||
register unsigned char *rgb_src = src;
|
||||
register unsigned char *yellow_dst = dst[0];
|
||||
register unsigned char s, k;
|
||||
register int count = numpix, offset = bpp-3;
|
||||
|
@ -874,8 +943,10 @@ static void extract_yellowk (unsigned char *src, int bpp, int numpix,
|
|||
s = 255 - *(rgb_src++); /* magenta */
|
||||
if (s < k) k = s;
|
||||
*yellow_dst = s = 255 - *(rgb_src++);
|
||||
if (s < k) k = s;
|
||||
if (k) *yellow_dst -= k;
|
||||
if (s < k)
|
||||
k = s;
|
||||
if (k)
|
||||
*yellow_dst -= k;
|
||||
yellow_dst++;
|
||||
|
||||
rgb_src += offset;
|
||||
|
|
Loading…
Reference in New Issue