From ea00f56ac6b8b08c828e5e5cc64bae73ec1d8ef8 Mon Sep 17 00:00:00 2001 From: Eduardo Gonzalez Lopez de Murillas Date: Thu, 26 Aug 2021 20:53:13 +0200 Subject: [PATCH 01/10] Added support for Paeth PNG filter compression (predictor value = 4) (#537) * Added support for Paeth PNG filter compression (predictor value = 4) * Use `above` and `upper_left` as in the pseudo code * Refactor: use variable names that are very close to the pseudo code and add pieces of the docs to show what is going on. * Fix line length issues * Add line about compressions to README.md * Fix merge conflict on readme * Fix bug in filter type Up * Make if-else consistent Co-authored-by: Eduardo Gonzalez Lopez de Murillas Co-authored-by: Pieter Marsman --- CHANGELOG.md | 3 + README.md | 49 ++++++++-------- pdfminer/utils.py | 138 +++++++++++++++++++++++++++++++++++----------- 3 files changed, 131 insertions(+), 59 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 17b8c6bf..5107fbf3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] +### Added +- Support for Paeth PNG filter compression (predictor value = 4) ([#537](https://github.com/pdfminer/pdfminer.six/pull/537)) + ### Fixed - Fix issue of TypeError: cannot unpack non-iterable PDFObjRef object, when unpacking the value of 'DW2' ([#529](https://github.com/pdfminer/pdfminer.six/pull/529)) - `PermissionError` when creating temporary filepaths on windows when running tests ([#469](https://github.com/pdfminer/pdfminer.six/issues/469)) diff --git a/README.md b/README.md index bed07bc7..7b4ff501 100644 --- a/README.md +++ b/README.md @@ -7,15 +7,12 @@ pdfminer.six *We fathom PDF* -Pdfminer.six is a community maintained fork of the original PDFMiner. It is a -tool for extracting information from PDF documents. It focuses on getting -and analyzing text data. Pdfminer.six extracts the text from a page directly -from the sourcecode of the PDF. It can also be used to get the exact location, -font or color of the text. +Pdfminer.six is a community maintained fork of the original PDFMiner. It is a tool for extracting information from PDF +documents. It focuses on getting and analyzing text data. Pdfminer.six extracts the text from a page directly from the +sourcecode of the PDF. It can also be used to get the exact location, font or color of the text. -It is built in a modular way such that each component of pdfminer.six can be -replaced easily. You can implement your own interpreter or rendering device -that uses the power of pdfminer.six for other purposes than text analysis. +It is built in a modular way such that each component of pdfminer.six can be replaced easily. You can implement your own +interpreter or rendering device that uses the power of pdfminer.six for other purposes than text analysis. Check out the full documentation on [Read the Docs](https://pdfminersix.readthedocs.io). @@ -24,31 +21,31 @@ Check out the full documentation on Features -------- - * Written entirely in Python. - * Parse, analyze, and convert PDF documents. - * PDF-1.7 specification support. (well, almost). - * CJK languages and vertical writing scripts support. - * Various font types (Type1, TrueType, Type3, and CID) support. - * Support for extracting images (JPG, JBIG2 and Bitmaps). - * Support for RC4 and AES encryption. - * Support for AcroForm interactive form extraction. - * Table of contents extraction. - * Tagged contents extraction. - * Automatic layout analysis. - +* Written entirely in Python. +* Parse, analyze, and convert PDF documents. +* PDF-1.7 specification support. (well, almost). +* CJK languages and vertical writing scripts support. +* Various font types (Type1, TrueType, Type3, and CID) support. +* Support for extracting images (JPG, JBIG2, Bitmaps). +* Support for various compressions (ASCIIHexDecode, ASCII85Decode, LZWDecode, FlateDecode, RunLengthDecode, + CCITTFaxDecode) +* Support for RC4 and AES encryption. +* Support for AcroForm interactive form extraction. +* Table of contents extraction. +* Tagged contents extraction. +* Automatic layout analysis. How to use ---------- - * Install Python 3.6 or newer. - * Install - - `pip install pdfminer.six` +* Install Python 3.6 or newer. +* Install - * Use command-line interface to extract text from pdf: + `pip install pdfminer.six` - `python pdf2txt.py samples/simple1.pdf` +* Use command-line interface to extract text from pdf: + `python pdf2txt.py samples/simple1.pdf` Contributing ------------ diff --git a/pdfminer/utils.py b/pdfminer/utils.py index 0c67ff1c..d6507efd 100644 --- a/pdfminer/utils.py +++ b/pdfminer/utils.py @@ -77,44 +77,116 @@ def compatible_encode_method(bytesorstring, encoding='utf-8', return bytesorstring.decode(encoding, erraction) +def paeth_predictor(left, above, upper_left): + # From http://www.libpng.org/pub/png/spec/1.2/PNG-Filters.html + # Initial estimate + p = left + above - upper_left + # Distances to a,b,c + pa = abs(p - left) + pb = abs(p - above) + pc = abs(p - upper_left) + + # Return nearest of a,b,c breaking ties in order a,b,c + if pa <= pb and pa <= pc: + return left + elif pb <= pc: + return above + else: + return upper_left + + def apply_png_predictor(pred, colors, columns, bitspercomponent, data): + """Reverse the effect of the PNG predictor + + Documentation: http://www.libpng.org/pub/png/spec/1.2/PNG-Filters.html + """ if bitspercomponent != 8: - # unsupported - raise ValueError("Unsupported `bitspercomponent': %d" % - bitspercomponent) + msg = "Unsupported `bitspercomponent': %d" % bitspercomponent + raise ValueError(msg) + nbytes = colors * columns * bitspercomponent // 8 + bpp = colors * bitspercomponent // 8 # number of bytes per complete pixel buf = b'' - line0 = b'\x00' * columns - for i in range(0, len(data), nbytes + 1): - ft = data[i] - i += 1 - line1 = data[i:i + nbytes] - line2 = b'' - if ft == 0: - # PNG none - line2 += line1 - elif ft == 1: - # PNG sub (UNTESTED) - c = 0 - for b in line1: - c = (c + b) & 255 - line2 += bytes((c,)) - elif ft == 2: - # PNG up - for (a, b) in zip(line0, line1): - c = (a + b) & 255 - line2 += bytes((c,)) - elif ft == 3: - # PNG average (UNTESTED) - c = 0 - for (a, b) in zip(line0, line1): - c = ((c + a + b) // 2) & 255 - line2 += bytes((c,)) + line_above = b'\x00' * columns + for scanline_i in range(0, len(data), nbytes + 1): + filter_type = data[scanline_i] + line_encoded = data[scanline_i + 1:scanline_i + 1 + nbytes] + raw = b'' + + if filter_type == 0: + # Filter type 0: None + raw += line_encoded + + elif filter_type == 1: + # Filter type 1: Sub + # To reverse the effect of the Sub() filter after decompression, + # output the following value: + # Raw(x) = Sub(x) + Raw(x - bpp) + # (computed mod 256), where Raw() refers to the bytes already + # decoded. + for j, sub_x in enumerate(line_encoded): + if j - bpp < 0: + raw_x_bpp = 0 + else: + raw_x_bpp = int(raw[j - bpp]) + raw_x = (sub_x + raw_x_bpp) & 255 + raw += bytes((raw_x,)) + + elif filter_type == 2: + # Filter type 2: Up + # To reverse the effect of the Up() filter after decompression, + # output the following value: + # Raw(x) = Up(x) + Prior(x) + # (computed mod 256), where Prior() refers to the decoded bytes of + # the prior scanline. + for (up_x, prior_x) in zip(line_encoded, line_above): + raw_x = (up_x + prior_x) & 255 + raw += bytes((raw_x,)) + + elif filter_type == 3: + # Filter type 3: Average + # To reverse the effect of the Average() filter after + # decompression, output the following value: + # Raw(x) = Average(x) + floor((Raw(x-bpp)+Prior(x))/2) + # where the result is computed mod 256, but the prediction is + # calculated in the same way as for encoding. Raw() refers to the + # bytes already decoded, and Prior() refers to the decoded bytes of + # the prior scanline. + for j, average_x in enumerate(line_encoded): + if j - bpp < 0: + raw_x_bpp = 0 + else: + raw_x_bpp = int(raw[j - bpp]) + prior_x = int(line_above[j]) + raw_x = (average_x + (raw_x_bpp + prior_x) // 2) & 255 + raw += bytes((raw_x,)) + + elif filter_type == 4: + # Filter type 4: Paeth + # To reverse the effect of the Paeth() filter after decompression, + # output the following value: + # Raw(x) = Paeth(x) + # + PaethPredictor(Raw(x-bpp), Prior(x), Prior(x-bpp)) + # (computed mod 256), where Raw() and Prior() refer to bytes + # already decoded. Exactly the same PaethPredictor() function is + # used by both encoder and decoder. + for j, paeth_x in enumerate(line_encoded): + if j - bpp < 0: + raw_x_bpp = 0 + prior_x_bpp = 0 + else: + raw_x_bpp = int(raw[j - bpp]) + prior_x_bpp = int(line_above[j - bpp]) + prior_x = int(line_above[j]) + paeth = paeth_predictor(raw_x_bpp, prior_x, prior_x_bpp) + raw_x = (paeth_x + paeth) & 255 + raw += bytes((raw_x,)) + else: - # unsupported - raise ValueError("Unsupported predictor value: %d" % ft) - buf += line2 - line0 = line2 + raise ValueError("Unsupported predictor value: %d" % filter_type) + + buf += raw + line_above = raw return buf From 543976f195d2fb042d065474141ffac05c58ef10 Mon Sep 17 00:00:00 2001 From: "Tony(Baojia) Tong" Date: Thu, 26 Aug 2021 14:55:02 -0400 Subject: [PATCH 02/10] Fix issue of ValueError and KeyError rasied in PDFdocument and PDFparser (#574) * check obj type * update changelog * Update CHANGELOG.md * fix the bug * fix condition * update changelog * update changelog again * update changelog * update Co-authored-by: Pieter Marsman Co-authored-by: Tony Tong --- CHANGELOG.md | 1 + pdfminer/pdfdocument.py | 2 +- pdfminer/pdfparser.py | 16 ++++++++-------- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5107fbf3..89b0fe72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Support for Paeth PNG filter compression (predictor value = 4) ([#537](https://github.com/pdfminer/pdfminer.six/pull/537)) ### Fixed +- Fix issue of ValueError and KeyError rasied in PDFdocument and PDFparser ([#573](https://github.com/pdfminer/pdfminer.six/pull/574)) - Fix issue of TypeError: cannot unpack non-iterable PDFObjRef object, when unpacking the value of 'DW2' ([#529](https://github.com/pdfminer/pdfminer.six/pull/529)) - `PermissionError` when creating temporary filepaths on windows when running tests ([#469](https://github.com/pdfminer/pdfminer.six/issues/469)) - Detecting trailer correctly when surrounded with needless whitespace ([#535](https://github.com/pdfminer/pdfminer.six/pull/535)) diff --git a/pdfminer/pdfdocument.py b/pdfminer/pdfdocument.py index e67eae73..2da93c89 100644 --- a/pdfminer/pdfdocument.py +++ b/pdfminer/pdfdocument.py @@ -230,7 +230,7 @@ def load(self, parser): (_, kwd) = parser.nexttoken() (_, stream) = parser.nextobject() if not isinstance(stream, PDFStream) \ - or stream['Type'] is not LITERAL_XREF: + or stream.get('Type') is not LITERAL_XREF: raise PDFNoValidXRef('Invalid PDF stream spec.') size = stream['Size'] index_array = stream.get('Index', (0, size)) diff --git a/pdfminer/pdfparser.py b/pdfminer/pdfparser.py index ee64c2ee..b604b9dd 100644 --- a/pdfminer/pdfparser.py +++ b/pdfminer/pdfparser.py @@ -68,14 +68,14 @@ def do_keyword(self, pos, token): elif token is self.KEYWORD_R: # reference to indirect object - try: - ((_, objid), (_, genno)) = self.pop(2) - (objid, genno) = (int(objid), int(genno)) - obj = PDFObjRef(self.doc, objid, genno) - self.push((pos, obj)) - except PSSyntaxError: - pass - + if len(self.curstack) >= 2: + try: + ((_, objid), (_, genno)) = self.pop(2) + (objid, genno) = (int(objid), int(genno)) + obj = PDFObjRef(self.doc, objid, genno) + self.push((pos, obj)) + except PSSyntaxError: + pass elif token is self.KEYWORD_STREAM: # stream object ((_, dic),) = self.pop(1) From d821fed340e7569e26568e9202b58a1d557025b1 Mon Sep 17 00:00:00 2001 From: X Date: Fri, 27 Aug 2021 03:58:50 +0900 Subject: [PATCH 03/10] Fix typos in readthedocs documentation. (#579) * Fix typos and possible mistakes. * Revert two edits based on discussion in #579 Revert the two changes based on our discussion. I read the documentation and had a glimpse at the default code. And perhaps the confusion was caused by the figure that shows the Char Margin (M) and the Word Margin (W). Clearly, M is smaller than W in absolute terms, but as mentioned, they are both relative numbers. Maybe it is useful to point that out in the figure but I am not sure how best to do it. Another option is to mention use something like `min_char_margin_threshold` or similar, in the hope that they are easier to understand. Just some thoughts! * Triggering travis again Co-authored-by: Pieter Marsman --- docs/source/topic/converting_pdf_to_text.rst | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/docs/source/topic/converting_pdf_to_text.rst b/docs/source/topic/converting_pdf_to_text.rst index 6b4dc1e9..acb678bd 100644 --- a/docs/source/topic/converting_pdf_to_text.rst +++ b/docs/source/topic/converting_pdf_to_text.rst @@ -4,11 +4,11 @@ Converting a PDF file to text ***************************** Most PDF files look like they contain well structured text. But the reality is -that a PDF file does not contain anything that resembles a paragraphs, +that a PDF file does not contain anything that resembles paragraphs, sentences or even words. When it comes to text, a PDF file is only aware of the characters and their placement. -This makes extracting meaningful pieces of text from PDF's files difficult. +This makes extracting meaningful pieces of text from PDF files difficult. The characters that compose a paragraph are no different from those that compose the table, the page footer or the description of a figure. Unlike other documents formats, like a `.txt` file or a word document, the PDF format @@ -20,7 +20,6 @@ interactive elements and higher-level application data. A PDF file contains the objects making up a PDF document along with associated structural information, all represented as a single self-contained sequence of bytes. [1]_ - .. _topic_pdf_to_text_layout: Layout analysis algorithm @@ -41,7 +40,6 @@ of layout objects on a PDF page. The output of the layout analysis is a hierarchy of layout objects. - The output of the layout analysis heavily depends on a couple of parameters. All these parameters are part of the :ref:`api_laparams` class. @@ -56,10 +54,9 @@ bottom-left corner and upper-right corner, i.e. its bounding box. Pdfminer Characters that are both horizontally and vertically close are grouped onto one line. How close they should be is determined by the `char_margin` (M in figure) and the `line_overlap` (not in figure) parameter. The horizontal -*distance* between the bounding boxes of two characters should be smaller that +*distance* between the bounding boxes of two characters should be smaller than the `char_margin` and the vertical *overlap* between the bounding boxes should -be smaller the the `line_overlap`. - +be smaller than the `line_overlap`. .. raw:: html :file: ../_static/layout_analysis.html @@ -71,14 +68,14 @@ relative to the minimum height of either one of the bounding boxes. Spaces need to be inserted between characters because the PDF format has no notion of the space character. A space is inserted if the characters are -further apart that the `word_margin` (W in the figure). The `word_margin` is +further apart than the `word_margin` (W in the figure). The `word_margin` is relative to the maximum width or height of the new character. Having a smaller `word_margin` creates smaller words. Note that the `word_margin` should at least be smaller than the `char_margin` otherwise none of the characters will be separated by a space. The result of this stage is a list of lines. Each line consists a list of -characters. These characters either original `LTChar` characters that +characters. These characters are either original `LTChar` characters that originate from the PDF file, or inserted `LTAnno` characters that represent spaces between words or newlines at the end of each line. @@ -107,7 +104,7 @@ of lines. Grouping textboxes hierarchically --------------------------------- -the last step is to group the text boxes in a meaningful way. This step +The last step is to group the text boxes in a meaningful way. This step repeatedly merges the two text boxes that are closest to each other. The closeness of bounding boxes is computed as the area that is between the @@ -118,7 +115,6 @@ boxes of the individual lines. .. raw:: html :file: ../_static/layout_analysis_group_boxes.html - Working with rotated characters =============================== From 234c4663729fe4ba713e54502e97541fec8e14af Mon Sep 17 00:00:00 2001 From: wind_chh Date: Fri, 27 Aug 2021 03:05:03 +0800 Subject: [PATCH 04/10] Fix extraction of some cjk characters (#593) Fixes #566 * try to fix issue of some Chinese characters cannot be extracted correctly (#566). * format code to pass flake8 check. * fix typo and refer to issue 593. Co-authored-by: huan_cheng Co-authored-by: Pieter Marsman --- .gitignore | 4 +++- CHANGELOG.md | 1 + pdfminer/cmapdb.py | 8 ++++---- pdfminer/pdffont.py | 4 ++-- samples/contrib/issue_566_test_1.pdf | Bin 0 -> 73936 bytes samples/contrib/issue_566_test_2.pdf | Bin 0 -> 107442 bytes tests/test_highlevel_extracttext.py | 14 +++++++++++++- 7 files changed, 23 insertions(+), 8 deletions(-) create mode 100644 samples/contrib/issue_566_test_1.pdf create mode 100644 samples/contrib/issue_566_test_2.pdf diff --git a/.gitignore b/.gitignore index a39febb6..56f96b3f 100644 --- a/.gitignore +++ b/.gitignore @@ -21,5 +21,7 @@ tests/*.txt # python venv management tools Pipfile Pipfile.lock +.noseids +.vscode/ pyproject.toml -poetry.lock \ No newline at end of file +poetry.lock diff --git a/CHANGELOG.md b/CHANGELOG.md index 89b0fe72..1ed10ebb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Fix issue of ValueError and KeyError rasied in PDFdocument and PDFparser ([#573](https://github.com/pdfminer/pdfminer.six/pull/574)) - Fix issue of TypeError: cannot unpack non-iterable PDFObjRef object, when unpacking the value of 'DW2' ([#529](https://github.com/pdfminer/pdfminer.six/pull/529)) - `PermissionError` when creating temporary filepaths on windows when running tests ([#469](https://github.com/pdfminer/pdfminer.six/issues/469)) +- Fix issue of some Chinese characters can not be extracted correctly ([#593](https://github.com/pdfminer/pdfminer.six/pull/593)) - Detecting trailer correctly when surrounded with needless whitespace ([#535](https://github.com/pdfminer/pdfminer.six/pull/535)) - Fix `.paint_path` logic for handling single line segments and extracting point-on-curve positions of Beziér path commands ([#530](https://github.com/pdfminer/pdfminer.six/pull/530)) diff --git a/pdfminer/cmapdb.py b/pdfminer/cmapdb.py index 7c0b7721..35ced14f 100644 --- a/pdfminer/cmapdb.py +++ b/pdfminer/cmapdb.py @@ -338,7 +338,7 @@ def do_keyword(self, pos, token): if token is self.KEYWORD_ENDCIDRANGE: objs = [obj for (__, obj) in self.popall()] for (s, e, cid) in choplist(3, objs): - if (not isinstance(s, str) or not isinstance(e, str) or + if (not isinstance(s, bytes) or not isinstance(e, bytes) or not isinstance(cid, int) or len(s) != len(e)): continue sprefix = s[:-4] @@ -352,7 +352,7 @@ def do_keyword(self, pos, token): vlen = len(svar) for i in range(e1-s1+1): x = sprefix+struct.pack('>L', s1+i)[-vlen:] - self.cmap.add_code2cid(x, cid+i) + self.cmap.add_cid2unichr(cid+i, x) return if token is self.KEYWORD_BEGINCIDCHAR: @@ -361,8 +361,8 @@ def do_keyword(self, pos, token): if token is self.KEYWORD_ENDCIDCHAR: objs = [obj for (__, obj) in self.popall()] for (cid, code) in choplist(2, objs): - if isinstance(code, str) and isinstance(cid, str): - self.cmap.add_code2cid(code, nunpack(cid)) + if isinstance(code, bytes) and isinstance(cid, int): + self.cmap.add_cid2unichr(cid, code) return if token is self.KEYWORD_BEGINBFRANGE: diff --git a/pdfminer/pdffont.py b/pdfminer/pdffont.py index c0da1b6d..74ad6a61 100644 --- a/pdfminer/pdffont.py +++ b/pdfminer/pdffont.py @@ -403,9 +403,9 @@ def __init__(self, name, fp): return def create_unicode_map(self): - if 'cmap' not in self.tables: + if b'cmap' not in self.tables: raise TrueTypeFont.CMapNotFound - (base_offset, length) = self.tables['cmap'] + (base_offset, length) = self.tables[b'cmap'] fp = self.fp fp.seek(base_offset) (version, nsubtables) = struct.unpack('>HH', fp.read(4)) diff --git a/samples/contrib/issue_566_test_1.pdf b/samples/contrib/issue_566_test_1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..29670983ad8842f3c98bf46bc1a77725f640d983 GIT binary patch literal 73936 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�%$@y_r}DqHRVY$lN^pF2MQ{OHi$Z7XB12)y@C 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

LY7H4!g!#(;FOy_mlE3M%c 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%0A7rcl#4 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

3X^?*dKg_K9)Q~pH7rE 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 Date: Sun, 29 Aug 2021 15:32:14 -0400 Subject: [PATCH 05/10] Fix 594 use null id when encrypted but no id given (#595) Co-authored-by: Pieter Marsman --- CHANGELOG.md | 1 + pdfminer/pdfdocument.py | 9 ++++++++- samples/encryption/encrypted_doc_no_id.pdf | Bin 0 -> 13696 bytes tests/test_pdfdocument.py | 13 ++++++++++++- 4 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 samples/encryption/encrypted_doc_no_id.pdf diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ed10ebb..3f1e1c39 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Support for Paeth PNG filter compression (predictor value = 4) ([#537](https://github.com/pdfminer/pdfminer.six/pull/537)) ### Fixed +- `KeyError` when `'Encrypt'` but not `'ID'` present in `trailer` ([#594](https://github.com/pdfminer/pdfminer.six/pull/594)) - Fix issue of ValueError and KeyError rasied in PDFdocument and PDFparser ([#573](https://github.com/pdfminer/pdfminer.six/pull/574)) - Fix issue of TypeError: cannot unpack non-iterable PDFObjRef object, when unpacking the value of 'DW2' ([#529](https://github.com/pdfminer/pdfminer.six/pull/529)) - `PermissionError` when creating temporary filepaths on windows when running tests ([#469](https://github.com/pdfminer/pdfminer.six/issues/469)) diff --git a/pdfminer/pdfdocument.py b/pdfminer/pdfdocument.py index 2da93c89..8233281d 100644 --- a/pdfminer/pdfdocument.py +++ b/pdfminer/pdfdocument.py @@ -583,7 +583,14 @@ def __init__(self, parser, password='', caching=True, fallback=True): continue # If there's an encryption info, remember it. if 'Encrypt' in trailer: - self.encryption = (list_value(trailer['ID']), + if 'ID' in trailer: + id_value = list_value(trailer['ID']) + else: + # Some documents may not have a /ID, use two empty + # byte strings instead. Solves + # https://github.com/pdfminer/pdfminer.six/issues/594 + id_value = (b'', b'') + self.encryption = (id_value, dict_value(trailer['Encrypt'])) self._initialize_password(password) if 'Info' in trailer: diff --git a/samples/encryption/encrypted_doc_no_id.pdf b/samples/encryption/encrypted_doc_no_id.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bdab7dc4d845047aefa265dbb7e3b9dce9b7cca0 GIT binary patch literal 13696 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 Date: Tue, 31 Aug 2021 04:31:32 +0900 Subject: [PATCH 06/10] Fix `AttributeError` when dumping a TOC with bytes destinations (#600) * Fix an error when dumping a TOC * Fix a bug that a TOC title variable is a bytes type * Update CHANGELOG.md * Update CHANGELOG.md * Rename e() to escape() and merge two isinstance() checks Co-authored-by: Pieter Marsman --- CHANGELOG.md | 3 ++- tools/dumppdf.py | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f1e1c39..0c55ccbc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - `KeyError` when `'Encrypt'` but not `'ID'` present in `trailer` ([#594](https://github.com/pdfminer/pdfminer.six/pull/594)) - Fix issue of ValueError and KeyError rasied in PDFdocument and PDFparser ([#573](https://github.com/pdfminer/pdfminer.six/pull/574)) - Fix issue of TypeError: cannot unpack non-iterable PDFObjRef object, when unpacking the value of 'DW2' ([#529](https://github.com/pdfminer/pdfminer.six/pull/529)) -- `PermissionError` when creating temporary filepaths on windows when running tests ([#469](https://github.com/pdfminer/pdfminer.six/issues/469)) +- Fix `PermissionError` when creating temporary filepaths on windows when running tests ([#484](https://github.com/pdfminer/pdfminer.six/pull/484)) +- Fix `AttributeError` when dumping a TOC with bytes destinations ([#600](https://github.com/pdfminer/pdfminer.six/pull/600)) - Fix issue of some Chinese characters can not be extracted correctly ([#593](https://github.com/pdfminer/pdfminer.six/pull/593)) - Detecting trailer correctly when surrounded with needless whitespace ([#535](https://github.com/pdfminer/pdfminer.six/pull/535)) - Fix `.paint_path` logic for handling single line segments and extracting point-on-curve positions of Beziér path commands ([#530](https://github.com/pdfminer/pdfminer.six/pull/530)) diff --git a/tools/dumppdf.py b/tools/dumppdf.py index 0aa7b45c..8baddc8d 100755 --- a/tools/dumppdf.py +++ b/tools/dumppdf.py @@ -22,7 +22,7 @@ ESC_PAT = re.compile(r'[\000-\037&<>()"\042\047\134\177-\377]') -def e(s): +def escape(s): if isinstance(s, bytes): s = str(s, 'latin-1') return ESC_PAT.sub(lambda m: '&#%d;' % ord(m.group(0)), s) @@ -52,7 +52,7 @@ def dumpxml(out, obj, codec=None): return if isinstance(obj, ((str,), bytes)): - out.write('%s' % (len(obj), e(obj))) + out.write('%s' % (len(obj), escape(obj))) return if isinstance(obj, PDFStream): @@ -66,7 +66,7 @@ def dumpxml(out, obj, codec=None): out.write('\n\n') if codec == 'text': data = obj.get_data() - out.write('%s\n' % (len(data), e(data))) + out.write('%s\n' % (len(data), escape(data))) out.write('') return @@ -135,7 +135,7 @@ def dumpoutline(outfp, fname, objids, pagenos, password='', in enumerate(PDFPage.create_pages(doc), 1)} def resolve_dest(dest): - if isinstance(dest, str): + if isinstance(dest, (str, bytes)): dest = resolve1(doc.get_dest(dest)) elif isinstance(dest, PSLiteral): dest = resolve1(doc.get_dest(dest.name)) @@ -161,7 +161,7 @@ def resolve_dest(dest): 'D'): dest = resolve_dest(action['D']) pageno = pages[dest[0].objid] - s = e(title).encode('utf-8', 'xmlcharrefreplace') + s = escape(title) outfp.write('\n'.format(level, s)) if dest is not None: outfp.write('') From 1d33c026e47371614013810b9bb4ddde088640ca Mon Sep 17 00:00:00 2001 From: Daniele Procida Date: Mon, 30 Aug 2021 21:47:40 +0200 Subject: [PATCH 07/10] =?UTF-8?q?Updated=20link=20to=20Di=C3=A1taxis=20doc?= =?UTF-8?q?umentation=20website=20(#606)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The canonical home of the documentation framework has moved from documentation.divio.com to https://diataxis.fr. --- docs/source/index.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/index.rst b/docs/source/index.rst index 4616f6d1..7851b8eb 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -22,8 +22,8 @@ Check out the source on `github `_. Content ======= -This documentation is organized into four sections (according to the `Divio -documentation system `_). The +This documentation is organized into four sections (according to the `Diátaxis +documentation framework `_). The :ref:`tutorial` section helps you setup and use pdfminer.six for the first time. Read this section if this is your first time working with pdfminer.six. The :ref:`howto` offers specific recipies for solving common problems. From 7f54cefe0263f13ca14e00b190cb00c78a4598af Mon Sep 17 00:00:00 2001 From: Fiete <41323592+FieteO@users.noreply.github.com> Date: Mon, 30 Aug 2021 22:17:21 +0200 Subject: [PATCH 08/10] Use visible imports in highlevel.rst documentation (#609) * add missing import for extract_text_to_fp * Replace testsetup with visible imports in documentation * Remove obsolete check for python version; python 2 is not supported anymore * (Unrelated to this MR) Remove sys from converter.py * Optimize imports * (Unrelated to this MR) fix line length error Co-authored-by: Pieter Marsman --- docs/source/tutorial/highlevel.rst | 18 +++++------------- pdfminer/converter.py | 3 --- tools/dumppdf.py | 3 ++- 3 files changed, 7 insertions(+), 17 deletions(-) diff --git a/docs/source/tutorial/highlevel.rst b/docs/source/tutorial/highlevel.rst index ffca4721..fff47cb4 100644 --- a/docs/source/tutorial/highlevel.rst +++ b/docs/source/tutorial/highlevel.rst @@ -1,8 +1,3 @@ -.. testsetup:: - - import sys - from pdfminer.high_level import extract_text_to_fp, extract_text - .. _tutorial_highlevel: Extract text from a PDF using Python @@ -15,6 +10,7 @@ The most simple way to extract text from a PDF is to use .. doctest:: + >>> from pdfminer.high_level import extract_text >>> text = extract_text('samples/simple1.pdf') >>> print(repr(text)) 'Hello \n\nWorld\n\nHello \n\nWorld\n\nH e l l o \n\nW o r l d\n\nH e l l o \n\nW o r l d\n\n\x0c' @@ -42,10 +38,8 @@ To read text from a PDF and print it on the command line: .. doctest:: - >>> if sys.version_info > (3, 0): - ... from io import StringIO - ... else: - ... from io import BytesIO as StringIO + >>> from io import StringIO + >>> from pdfminer.high_level import extract_text_to_fp >>> output_string = StringIO() >>> with open('samples/simple1.pdf', 'rb') as fin: ... extract_text_to_fp(fin, output_string) @@ -56,10 +50,8 @@ Or to convert it to html and use layout analysis: .. doctest:: - >>> if sys.version_info > (3, 0): - ... from io import StringIO - ... else: - ... from io import BytesIO as StringIO + >>> from io import StringIO + >>> from pdfminer.high_level import extract_text_to_fp >>> from pdfminer.layout import LAParams >>> output_string = StringIO() >>> with open('samples/simple1.pdf', 'rb') as fin: diff --git a/pdfminer/converter.py b/pdfminer/converter.py index 4b2b62e4..de58f30d 100644 --- a/pdfminer/converter.py +++ b/pdfminer/converter.py @@ -1,7 +1,6 @@ import io import logging import re -import sys from . import utils from .layout import LTChar @@ -279,8 +278,6 @@ def __init__(self, rsrcmgr, outfp, codec='utf-8', pageno=1, laparams=None, def write(self, text): if self.codec: text = text.encode(self.codec) - if sys.version_info < (3, 0): - text = str(text) self.outfp.write(text) return diff --git a/tools/dumppdf.py b/tools/dumppdf.py index 8baddc8d..8724c815 100755 --- a/tools/dumppdf.py +++ b/tools/dumppdf.py @@ -66,7 +66,8 @@ def dumpxml(out, obj, codec=None): out.write('\n\n') if codec == 'text': data = obj.get_data() - out.write('%s\n' % (len(data), escape(data))) + out.write('%s\n' + % (len(data), escape(data))) out.write('') return From 46fa21476ad916e6c882697660e0cd5e4d4f6ec4 Mon Sep 17 00:00:00 2001 From: Mingye Wang Date: Wed, 1 Sep 2021 02:46:20 +0800 Subject: [PATCH 09/10] Raise proper error when bad --output-type is used and fix formatting output of TagExtractor * high_level: emit diagnostic for bad output_type * TagExtractor: eliminate runtime error This does not make is usable, but will satisfy my curiosity. * Use if-elif-else structure * Fix pycharm spacing warning * Rename _write_outfp to _write * Properly format tag names and tag values. Using utils.make_compat_str() such that the tag value is always a string. * Update CHANGELOG.md * Fix flake8 errors Co-authored-by: Pieter Marsman --- CHANGELOG.md | 2 ++ pdfminer/high_level.py | 16 ++++++++++++---- pdfminer/pdfdevice.py | 20 ++++++++++++-------- pdfminer/utils.py | 14 +++++++------- 4 files changed, 33 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c55ccbc..8cb40ad1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Fix issue of some Chinese characters can not be extracted correctly ([#593](https://github.com/pdfminer/pdfminer.six/pull/593)) - Detecting trailer correctly when surrounded with needless whitespace ([#535](https://github.com/pdfminer/pdfminer.six/pull/535)) - Fix `.paint_path` logic for handling single line segments and extracting point-on-curve positions of Beziér path commands ([#530](https://github.com/pdfminer/pdfminer.six/pull/530)) +- Raising `UnboundLocalError` when a bad `--output-type` is used ([#610](https://github.com/pdfminer/pdfminer.six/pull/610)) +- `TypeError` when using `TagExtractor` with non-string or non-bytes tag values ([#610](https://github.com/pdfminer/pdfminer.six/pull/610)) ## Removed - Support for Python 3.4 and 3.5 ([#522](https://github.com/pdfminer/pdfminer.six/pull/522)) diff --git a/pdfminer/high_level.py b/pdfminer/high_level.py index 96911ecd..33f661c0 100644 --- a/pdfminer/high_level.py +++ b/pdfminer/high_level.py @@ -56,25 +56,33 @@ def extract_text_to_fp(inf, outfp, output_type='text', codec='utf-8', imagewriter = ImageWriter(output_dir) rsrcmgr = PDFResourceManager(caching=not disable_caching) + device = None + + if output_type != 'text' and outfp == sys.stdout: + outfp = sys.stdout.buffer if output_type == 'text': device = TextConverter(rsrcmgr, outfp, codec=codec, laparams=laparams, imagewriter=imagewriter) - if outfp == sys.stdout: - outfp = sys.stdout.buffer - - if output_type == 'xml': + elif output_type == 'xml': device = XMLConverter(rsrcmgr, outfp, codec=codec, laparams=laparams, imagewriter=imagewriter, stripcontrol=strip_control) + elif output_type == 'html': device = HTMLConverter(rsrcmgr, outfp, codec=codec, scale=scale, layoutmode=layoutmode, laparams=laparams, imagewriter=imagewriter) + elif output_type == 'tag': device = TagExtractor(rsrcmgr, outfp, codec=codec) + else: + msg = f"Output type can be text, html, xml or tag but is " \ + f"{output_type}" + raise ValueError(msg) + interpreter = PDFPageInterpreter(rsrcmgr, device) for page in PDFPage.get_pages(inf, page_numbers, diff --git a/pdfminer/pdfdevice.py b/pdfminer/pdfdevice.py index 1f66a318..82ede760 100644 --- a/pdfminer/pdfdevice.py +++ b/pdfminer/pdfdevice.py @@ -154,29 +154,30 @@ def render_string(self, textstate, seq, ncs, graphicstate): char = font.to_unichr(cid) text += char except PDFUnicodeNotDefined: - print(chars) pass - self.outfp.write(utils.enc(text)) + self._write(utils.enc(text)) return def begin_page(self, page, ctm): output = '' %\ (self.pageno, utils.bbox2str(page.mediabox), page.rotate) - self.outfp.write(utils.make_compat_bytes(output)) + self._write(output) return def end_page(self, page): - self.outfp.write(utils.make_compat_bytes('\n')) + self._write('\n') self.pageno += 1 return def begin_tag(self, tag, props=None): s = '' if isinstance(props, dict): - s = ''.join(' {}="{}"'.format(utils.enc(k), utils.enc(str(v))) - for (k, v) in sorted(props.items())) + s = ''.join([ + ' {}="{}"'.format(utils.enc(k), utils.make_compat_str(v)) + for (k, v) in sorted(props.items()) + ]) out_s = '<{}{}>'.format(utils.enc(tag.name), s) - self.outfp.write(utils.make_compat_bytes(out_s)) + self._write(out_s) self._stack.append(tag) return @@ -184,10 +185,13 @@ def end_tag(self): assert self._stack, str(self.pageno) tag = self._stack.pop(-1) out_s = '' % utils.enc(tag.name) - self.outfp.write(utils.make_compat_bytes(out_s)) + self._write(out_s) return def do_tag(self, tag, props=None): self.begin_tag(tag, props) self._stack.pop(-1) return + + def _write(self, s: str): + self.outfp.write(s.encode(self.codec)) diff --git a/pdfminer/utils.py b/pdfminer/utils.py index d6507efd..4aabb52d 100644 --- a/pdfminer/utils.py +++ b/pdfminer/utils.py @@ -46,13 +46,13 @@ def make_compat_bytes(in_str): return in_str.encode() -def make_compat_str(in_str): - """Converts to string, guessing encoding.""" - assert isinstance(in_str, (bytes, str)), str(type(in_str)) - if isinstance(in_str, bytes): - enc = chardet.detect(in_str) - in_str = in_str.decode(enc['encoding']) - return in_str +def make_compat_str(o): + """Converts everything to string, if bytes guessing the encoding.""" + if isinstance(o, bytes): + enc = chardet.detect(o) + return o.decode(enc['encoding']) + else: + return str(o) def shorten_str(s, size): From 8ea9f1091a7eef307a80483fbdc6265e1fcf925f Mon Sep 17 00:00:00 2001 From: MapleCCC Date: Wed, 1 Sep 2021 02:52:13 +0800 Subject: [PATCH 10/10] Fix typos in converting_pdf_to_text.rst (#611) * Fix typos in converting_pdf_to_text.rst * The word "pdfminer.six" as a whole should not be separated by newline, otherwise they are treated as two separated words by renderer, and incorrectly displayed as separated. * Trim redundant spaces Co-authored-by: Pieter Marsman --- docs/source/topic/converting_pdf_to_text.rst | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/source/topic/converting_pdf_to_text.rst b/docs/source/topic/converting_pdf_to_text.rst index acb678bd..5194b114 100644 --- a/docs/source/topic/converting_pdf_to_text.rst +++ b/docs/source/topic/converting_pdf_to_text.rst @@ -11,7 +11,7 @@ the characters and their placement. This makes extracting meaningful pieces of text from PDF files difficult. The characters that compose a paragraph are no different from those that compose the table, the page footer or the description of a figure. Unlike -other documents formats, like a `.txt` file or a word document, the PDF format +other document formats, like a `.txt` file or a word document, the PDF format does not contain a stream of text. A PDF document does consists of a collection of objects that together describe @@ -29,10 +29,10 @@ PDFMiner attempts to reconstruct some of those structures by using heuristics on the positioning of characters. This works well for sentences and paragraphs because meaningful groups of nearby characters can be made. -The layout analysis consist of three different stages: it groups characters +The layout analysis consists of three different stages: it groups characters into words and lines, then it groups lines into boxes and finally it groups textboxes hierarchically. These stages are discussed in the following -sections. The resulting output of the layout analysis is an ordered hierarchy +sections. The resulting output of the layout analysis is an ordered hierarchy of layout objects on a PDF page. .. figure:: ../_static/layout_analysis_output.png @@ -48,8 +48,8 @@ Grouping characters into words and lines The first step in going from characters to text is to group characters in a meaningful way. Each character has an x-coordinate and a y-coordinate for its -bottom-left corner and upper-right corner, i.e. its bounding box. Pdfminer -.six uses these bounding boxes to decide which characters belong together. +bottom-left corner and upper-right corner, i.e. its bounding box. Pdfminer.six +uses these bounding boxes to decide which characters belong together. Characters that are both horizontally and vertically close are grouped onto one line. How close they should be is determined by the `char_margin` @@ -74,7 +74,7 @@ relative to the maximum width or height of the new character. Having a smaller least be smaller than the `char_margin` otherwise none of the characters will be separated by a space. -The result of this stage is a list of lines. Each line consists a list of +The result of this stage is a list of lines. Each line consists of a list of characters. These characters are either original `LTChar` characters that originate from the PDF file, or inserted `LTAnno` characters that represent spaces between words or newlines at the end of each line. @@ -91,14 +91,14 @@ Lines that are both horizontally overlapping and vertically close are grouped. How vertically close the lines should be is determined by the `line_margin`. This margin is specified relative to the height of the bounding box. Lines are close if the gap between the tops (see L :sub:`1` in the figure) and bottoms -(see L :sub:`2`) in the figure) of the bounding boxes are closer together +(see L :sub:`2`) in the figure) of the bounding boxes is closer together than the absolute line margin, i.e. the `line_margin` multiplied by the height of the bounding box. .. raw:: html :file: ../_static/layout_analysis_group_lines.html -The result of this stage is a list of text boxes. Each box consist of a list +The result of this stage is a list of text boxes. Each box consists of a list of lines. Grouping textboxes hierarchically