Add pdftopng

pull/198/head
Vinayak Mehta 2020-10-16 16:11:10 +05:30
parent 715e8a9769
commit 57a26fabcb
No known key found for this signature in database
GPG Key ID: 2DE013537A15A9A4
2 changed files with 37 additions and 44 deletions

View File

@ -208,17 +208,10 @@ class Lattice(BaseParser):
return t return t
def _generate_image(self): def _generate_image(self):
from ..ext.ghostscript import Ghostscript from pdftopng import pdftopng
self.imagename = "".join([self.rootname, ".png"]) self.imagename = "".join([self.rootname, ".png"])
gs_call = "-q -sDEVICE=png16m -o {} -r{} {}".format( pdftopng.convert(pdf_path=self.filename, png_path=self.rootname)
self.imagename, self.resolution, self.filename
)
gs_call = gs_call.encode().split()
null = open(os.devnull, "wb")
with Ghostscript(*gs_call, stdout=null) as gs:
pass
null.close()
def _generate_table_bbox(self): def _generate_table_bbox(self):
def scale_areas(areas): def scale_areas(areas):

View File

@ -24,7 +24,10 @@ requires = [
"tabulate>=0.8.9", "tabulate>=0.8.9",
] ]
cv_requires = ["opencv-python>=3.4.2.17"] base_requires = [
'opencv-python>=3.4.2.17',
'pdftopng>=0.1.0'
]
plot_requires = [ plot_requires = [
"matplotlib>=2.2.3", "matplotlib>=2.2.3",
@ -40,44 +43,41 @@ dev_requires = [
"sphinx-autobuild>=2021.3.14", "sphinx-autobuild>=2021.3.14",
] ]
all_requires = cv_requires + plot_requires all_requires = base_requires + plot_requires
dev_requires = dev_requires + all_requires dev_requires = dev_requires + all_requires
def setup_package(): def setup_package():
metadata = dict( metadata = dict(name=about['__title__'],
name=about["__title__"], version=about['__version__'],
version=about["__version__"], description=about['__description__'],
description=about["__description__"],
long_description=readme, long_description=readme,
long_description_content_type="text/markdown", long_description_content_type="text/markdown",
url=about["__url__"], url=about['__url__'],
author=about["__author__"], author=about['__author__'],
author_email=about["__author_email__"], author_email=about['__author_email__'],
license=about["__license__"], license=about['__license__'],
packages=find_packages(exclude=("tests",)), packages=find_packages(exclude=('tests',)),
install_requires=requires, install_requires=requires,
extras_require={ extras_require={
"all": all_requires, 'all': all_requires,
"cv": cv_requires, 'base': base_requires,
"dev": dev_requires, 'dev': dev_requires,
"plot": plot_requires, 'plot': plot_requires
}, },
entry_points={ entry_points={
"console_scripts": [ 'console_scripts': [
"camelot = camelot.cli:cli", 'camelot = camelot.cli:cli',
], ],
}, },
classifiers=[ classifiers=[
# Trove classifiers # Trove classifiers
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers # Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
"License :: OSI Approved :: MIT License", 'License :: OSI Approved :: MIT License',
"Programming Language :: Python :: 3.6", 'Programming Language :: Python :: 3.6',
"Programming Language :: Python :: 3.7", 'Programming Language :: Python :: 3.7',
"Programming Language :: Python :: 3.8", 'Programming Language :: Python :: 3.8'
"Programming Language :: Python :: 3.9", ])
],
)
try: try:
from setuptools import setup from setuptools import setup