poppler: pages are zero indexed and fix colors
authorAli Gholami Rudi <ali@rudi.ir>
Fri, 8 Mar 2013 19:10:01 +0000 (8 22:40 +0330)
committerAli Gholami Rudi <ali@rudi.ir>
Fri, 8 Mar 2013 19:11:46 +0000 (8 22:41 +0330)
poppler.c

index f27af3b..5be4ed1 100644 (file)
--- a/poppler.c
+++ b/poppler.c
@@ -27,7 +27,7 @@ static poppler::rotation_enum rotation(int times)
 int doc_draw(struct doc *doc, int p, int zoom, int rotate,
                fbval_t *bitmap, int *rows, int *cols)
 {
-       poppler::page *page = doc->doc->create_page(p);
+       poppler::page *page = doc->doc->create_page(p - 1);
        poppler::page_renderer pr;
        int x, y;
        int h, w;
@@ -43,7 +43,7 @@ int doc_draw(struct doc *doc, int p, int zoom, int rotate,
                int xs = y * *cols + (*cols - w) / 2;
                for (x = 0; x < w; x++) {
                        unsigned char *s = dat + img.bytes_per_row() * y + x * 4;
-                       bitmap[xs + x] = FB_VAL(s[0], s[1], s[2]);
+                       bitmap[xs + x] = FB_VAL(s[2], s[1], s[0]);
                }
        }
        *rows = h;