From 33564e95a1834b8e58a0f445363808dfb3b625d4 Mon Sep 17 00:00:00 2001 From: Sebastian Rasmussen <sebras@gmail.com> Date: Sun, 13 Aug 2017 00:57:31 +0800 Subject: Add bits per component parameter for flate and lzw compressed images. --- source/pdf/pdf-image.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/pdf/pdf-image.c b/source/pdf/pdf-image.c index 6afc804f..45273cfb 100644 --- a/source/pdf/pdf-image.c +++ b/source/pdf/pdf-image.c @@ -364,6 +364,8 @@ pdf_add_image(fz_context *ctx, pdf_document *doc, fz_image *image, int mask) pdf_dict_put_drop(ctx, dp, PDF_NAME_Colors, pdf_new_int(ctx, doc, cp->u.flate.colors)); if (cp->u.flate.predictor) pdf_dict_put_drop(ctx, dp, PDF_NAME_Predictor, pdf_new_int(ctx, doc, cp->u.flate.predictor)); + if (cp->u.flate.bpc) + pdf_dict_put_drop(ctx, dp, PDF_NAME_BitsPerComponent, pdf_new_int(ctx, doc, cp->u.flate.bpc)); pdf_dict_put_drop(ctx, imobj, PDF_NAME_Filter, PDF_NAME_FlateDecode); pdf_dict_put_drop(ctx, imobj, PDF_NAME_BitsPerComponent, pdf_new_int(ctx, doc, image->bpc)); break; @@ -376,6 +378,8 @@ pdf_add_image(fz_context *ctx, pdf_document *doc, fz_image *image, int mask) pdf_dict_put_drop(ctx, dp, PDF_NAME_Predictor, pdf_new_int(ctx, doc, cp->u.lzw.predictor)); if (cp->u.lzw.early_change) pdf_dict_put_drop(ctx, dp, PDF_NAME_EarlyChange, pdf_new_int(ctx, doc, cp->u.lzw.early_change)); + if (cp->u.lzw.bpc) + pdf_dict_put_drop(ctx, dp, PDF_NAME_BitsPerComponent, pdf_new_int(ctx, doc, cp->u.lzw.bpc)); pdf_dict_put_drop(ctx, imobj, PDF_NAME_Filter, PDF_NAME_LZWDecode); break; case FZ_IMAGE_RLD: -- cgit v1.2.3