summaryrefslogtreecommitdiff
path: root/source/fitz/halftone.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2016-03-16 18:03:49 +0000
committerRobin Watts <robin.watts@artifex.com>2016-03-16 18:06:51 +0000
commitd8b0666bd1ca7e2678dd28da8154484c65623b65 (patch)
treea86691f571dc269ca7479143d33750767182c1eb /source/fitz/halftone.c
parent58007a25a03b5aa3cb5242c3a23a81cefb59d23f (diff)
downloadmupdf-d8b0666bd1ca7e2678dd28da8154484c65623b65.tar.xz
mutool draw: Add banded mode output for pbm files.
Diffstat (limited to 'source/fitz/halftone.c')
-rw-r--r--source/fitz/halftone.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/fitz/halftone.c b/source/fitz/halftone.c
index 705d4718..8cc48a14 100644
--- a/source/fitz/halftone.c
+++ b/source/fitz/halftone.c
@@ -172,6 +172,11 @@ static void do_threshold_1(unsigned char *ht_line, unsigned char *pixmap, unsign
fz_bitmap *fz_new_bitmap_from_pixmap(fz_context *ctx, fz_pixmap *pix, fz_halftone *ht)
{
+ return fz_new_bitmap_from_pixmap_band(ctx, pix, ht, 0, 0);
+}
+
+fz_bitmap *fz_new_bitmap_from_pixmap_band(fz_context *ctx, fz_pixmap *pix, fz_halftone *ht, int band, int bandheight)
+{
fz_bitmap *out = NULL;
unsigned char *ht_line = NULL;
unsigned char *o, *p;
@@ -186,6 +191,7 @@ fz_bitmap *fz_new_bitmap_from_pixmap(fz_context *ctx, fz_pixmap *pix, fz_halfton
fz_var(ht_line);
fz_var(out);
+ band *= bandheight;
n = pix->n-1; /* Remove alpha */
if (ht == NULL)
{
@@ -200,7 +206,7 @@ fz_bitmap *fz_new_bitmap_from_pixmap(fz_context *ctx, fz_pixmap *pix, fz_halfton
h = pix->h;
x = pix->x;
- y = pix->y;
+ y = pix->y + band;
w = pix->w;
ostride = out->stride;
pstride = pix->w * pix->n;