| version 1.1.1.2, 2000/01/22 14:15:56 |
version 1.1.1.3, 2003/09/15 07:09:24 |
| Line 846 unsigned int x, y, value; |
|
| Line 846 unsigned int x, y, value; |
|
| } |
} |
| |
|
| |
|
| /* Currently unused */ |
|
| #if 1 /* HBB 991008: used by PNG, now */ |
|
| /* |
/* |
| * get pixel (x,y) value |
* get pixel (x,y) value |
| */ |
*/ |
| Line 857 unsigned int x, y; |
|
| Line 855 unsigned int x, y; |
|
| { |
{ |
| register unsigned int row; |
register unsigned int row; |
| register unsigned char mask; |
register unsigned char mask; |
| register unsigned char value; |
register unsigned char value = 0; |
| int i; |
int i; |
| |
|
| if (b_rastermode) { |
if (b_rastermode) { |
| Line 876 unsigned int x, y; |
|
| Line 874 unsigned int x, y; |
|
| row -= b_psize; |
row -= b_psize; |
| value <<= 1; |
value <<= 1; |
| } |
} |
| return(value); |
/* HBB 991123: the missing '>>1' was the 'every second color' problem |
| } |
* with PNG in 3.8a...*/ |
| else |
return(value>>1); |
| { |
} else { |
| #ifdef BITMAPDEBUG |
#ifdef BITMAPDEBUG |
| if (b_rastermode) |
if (b_rastermode) |
| fprintf(stderr, "Warning: getpixel(%d,%d) out of bounds\n", |
fprintf(stderr, "Warning: getpixel(%d,%d) out of bounds\n", |
| Line 890 unsigned int x, y; |
|
| Line 888 unsigned int x, y; |
|
| return(0); |
return(0); |
| } |
} |
| } |
} |
| #endif /* 0 */ |
|
| |
|
| |
|
| /* |
/* |
| Line 914 unsigned int x, y, planes; |
|
| Line 911 unsigned int x, y, planes; |
|
| b_angle = 0; |
b_angle = 0; |
| b_rastermode = 0; |
b_rastermode = 0; |
| /* allocate row pointers */ |
/* allocate row pointers */ |
| b_p = (bitmap *) gp_alloc((unsigned long) rows * sizeof(pixels *), "bitmap row buffer"); |
b_p = (bitmap *) gp_alloc(rows * sizeof(pixels *), "bitmap row buffer"); |
| memset(b_p, 0, rows * sizeof(pixels *)); |
memset(b_p, 0, rows * sizeof(pixels *)); |
| for (j = 0; j < rows; j++) { |
for (j = 0; j < rows; j++) { |
| /* allocate bitmap buffers */ |
/* allocate bitmap buffers */ |
| (*b_p)[j] = (pixels *) gp_alloc((unsigned long) x * sizeof(pixels), (char *) NULL); |
(*b_p)[j] = (pixels *) gp_alloc(x * sizeof(pixels), (char *) NULL); |
| if ((*b_p)[j] == (pixels *) NULL) { |
if ((*b_p)[j] == (pixels *) NULL) { |
| b_freebitmap(); /* free what we have already allocated */ |
b_freebitmap(); /* free what we have already allocated */ |
| int_error("out of memory for bitmap buffer", NO_CARET); |
int_error("out of memory for bitmap buffer", NO_CARET); |