From b784e5a53146808f6c1b7ee9c30cbdd68c11799c Mon Sep 17 00:00:00 2001 From: jose nazario Date: Thu, 3 Aug 2017 16:08:54 -0700 Subject: [PATCH 1/2] fix #175 - params may be None, deal with it --- pdfminer/pdftypes.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pdfminer/pdftypes.py b/pdfminer/pdftypes.py index 20d981dd..d1eb0df0 100644 --- a/pdfminer/pdftypes.py +++ b/pdfminer/pdftypes.py @@ -270,6 +270,8 @@ def decode(self): else: raise PDFNotImplementedError('Unsupported filter: %r' % f) # apply predictors + if not params: + continue if 'Predictor' in params: pred = int_value(params['Predictor']) if pred == 1: From 98536b40b162ec6949b0088da69ed7baf875a214 Mon Sep 17 00:00:00 2001 From: jose nazario Date: Thu, 3 Aug 2017 16:10:10 -0700 Subject: [PATCH 2/2] handle MediaBox not being available, fixes #56 --- pdfminer/pdfpage.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pdfminer/pdfpage.py b/pdfminer/pdfpage.py index a48767c6..d8b192b8 100644 --- a/pdfminer/pdfpage.py +++ b/pdfminer/pdfpage.py @@ -53,7 +53,7 @@ def __init__(self, doc, pageid, attrs): self.attrs = dict_value(attrs) self.lastmod = resolve1(self.attrs.get('LastModified')) self.resources = resolve1(self.attrs.get('Resources', dict())) - self.mediabox = resolve1(self.attrs['MediaBox']) + self.mediabox = resolve1(self.attrs.get('MediaBox', (0,0,0,0))) if 'CropBox' in self.attrs: self.cropbox = resolve1(self.attrs['CropBox']) else: