private static void put4bitbwtile(
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 /= 2;
while (height-- > 0)
{
int[] bw = null;
int _x;
for (_x = width; _x >= 2; _x -= 2)
{
bw = BWmap[buffer[offset]];
offset++;
for (int rc = 0; rc < 2; rc++)
{
raster[rasterOffset] = bw[rc];
rasterOffset++;
}
}
if (_x != 0)
{
bw = BWmap[buffer[offset]];
offset++;
raster[rasterOffset] = bw[0];
rasterOffset++;
}
rasterOffset += rasterShift;
offset += bufferShift;
}
}