Community maintained fork of pdfminer - we fathom PDF
 
 
Go to file
Recursing 0b1741b9bf Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352)
Fixes #186 

* Tread the permissions (the /P entry) as unsigned long, fix #186

* handle negative values for p

* Extract function for resolving an twos-complement

* Add test for issue #352

* Add line to CHANGELOG.md

* Only ints can be converted to a uint using two's-complement method

* Standardize import style; multiple imports from same module on one line

Co-authored-by: Pieter Marsman <pietermarsman@gmail.com>
2020-01-07 21:59:13 +01:00
.github Add item to checklist about updating CHANGELOG.md 2019-10-22 17:30:09 +02:00
cmaprsrc Fix typos 2016-09-13 16:25:09 +02:00
docs Add AES as supported encryption method to docs 2020-01-07 18:38:53 +01:00
pdfminer Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352) 2020-01-07 21:59:13 +01:00
samples Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352) 2020-01-07 21:59:13 +01:00
tests Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352) 2020-01-07 21:59:13 +01:00
tools Drop support for legacy Python 2 (#346) 2020-01-04 16:47:07 +01:00
.gitignore Add tox configuration for easy local testing (#85) 2017-08-18 08:11:32 +02:00
.travis.yml Drop support for legacy Python 2 (#346) 2020-01-04 16:47:07 +01:00
CHANGELOG.md Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352) 2020-01-07 21:59:13 +01:00
CONTRIBUTING.md Drop support for legacy Python 2 (#346) 2020-01-04 16:47:07 +01:00
LICENSE Added: LICENSE 2016-09-11 23:38:18 +09:00
MANIFEST.in Merge remote-tracking branch 'origin/master' 2017-01-19 08:03:16 +01:00
Makefile Merge remote-tracking branch 'origin/master' 2017-01-19 08:03:16 +01:00
README.md Add AES as supported encryption method to docs 2020-01-07 18:38:53 +01:00
setup.py Bump version 2020-01-04 18:15:15 +01:00
tox.ini Drop support for legacy Python 2 (#346) 2020-01-04 16:47:07 +01:00

README.md

pdfminer.six

Build Status PyPI version gitter

Pdfminer.six is an community maintained fork of the original PDFMiner. It is a tool for extracting information from PDF documents. Unlike other PDF-related tools, it focuses entirely on getting and analyzing text data. Pdfminer.six allows one to obtain the exact location of text in a page, as well as other information such as fonts or lines. It includes a PDF converter that can transform PDF files into other text formats (such as HTML). It has an extensible PDF parser that can be used for other purposes than text analysis.

Check out the full documentation on Read the Docs.

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.
  • Outline (TOC) extraction.
  • Tagged contents extraction.
  • Automatic layout analysis.

How to use

  • Install Python 3.4 or newer

  • Install

    pip install pdfminer.six

  • Use command-line interface to extract text from pdf:

    python pdf2txt.py samples/simple1.pdf

  • Check out more examples and documentation on Read the Docs.

Contributing

Be sure to read the contribution guidelines.