GRASS GIS 8 Programmer's Manual 8.2.0(2022)-exported
psdriver/draw_bitmap.c
Go to the documentation of this file.
1
2#include "psdriver.h"
3
4void PS_Bitmap(int ncols, int nrows, int threshold,
5 const unsigned char *buf)
6{
7 int i, j;
8
9 output("%d %d %d %d BITMAP\n", cur_x, cur_y, ncols, nrows);
10
11 for (j = 0; j < nrows; j++) {
12 unsigned int bit = 0x80;
13 unsigned int acc = 0;
14
15 for (i = 0; i < ncols; i++) {
16 unsigned int k = buf[j * ncols + i];
17
18 if (k > threshold)
19 acc |= bit;
20
21 bit >>= 1;
22
23 if (!bit) {
24 output("%02X", acc);
25 bit = 0x80;
26 acc = 0;
27 }
28 }
29
30 if (bit != 0x80)
31 output("%02X", acc);
32
33 output("\n");
34 }
35}
double cur_x
Definition: driver/init.c:32
double cur_y
Definition: driver/init.c:33
void PS_Bitmap(int ncols, int nrows, int threshold, const unsigned char *buf)
void output(const char *fmt,...)