private static put1bitbwtile ( |
||
img | ||
raster | int | |
rasterOffset | int | |
rasterShift | int | |
x | int | |
y | int | |
width | int | |
height | int | |
buffer | byte | |
offset | int | |
bufferShift | int | |
return | void |
private static void put1bitbwtile(
TiffRgbaImage img, int[] raster, int rasterOffset, int rasterShift,
int x, int y, int width, int height, byte[] buffer, int offset, int bufferShift)
{
int[][] BWmap = img.BWmap;
bufferShift /= 8;
while (height-- > 0)
{
int[] bw = null;
int _x;
for (_x = width; _x >= 8; _x -= 8)
{
bw = BWmap[buffer[offset]];
offset++;
for (int rc = 0; rc < 8; rc++)
{
raster[rasterOffset] = bw[rc];
rasterOffset++;
}
}
if (_x > 0)
{
bw = BWmap[buffer[offset]];
offset++;
if (_x <= 7 && _x > 0)
{
for (int i = 0; i < _x; i++)
{
raster[rasterOffset] = bw[i];
rasterOffset++;
}
}
}
rasterOffset += rasterShift;
offset += bufferShift;
}
}