diff options
| -rw-r--r-- | paper2remarkable/crop.py | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/paper2remarkable/crop.py b/paper2remarkable/crop.py index 895fe58..b8b31c6 100644 --- a/paper2remarkable/crop.py +++ b/paper2remarkable/crop.py @@ -14,6 +14,8 @@ import os import pdfplumber import subprocess +from PyPDF2.generic import RectangleObject + from .log import Logger RM_WIDTH = 1404 @@ -102,25 +104,11 @@ class Cropper(object): def process_page(self, page_idx, bbox_func, *args, **kwargs): """Process a single page and add it to the writer """ tmpfname = self.export_page(page_idx) - tmpfout = "./output.pdf" bbox = bbox_func(tmpfname, *args, **kwargs) - status = subprocess.call( - [ - self.pdfcrop_path, - "--bbox", - " ".join(map(str, bbox)), - tmpfname, - tmpfout, - ], - stdout=subprocess.DEVNULL, - ) - if not status == 0: - return status - reader = PyPDF2.PdfFileReader(tmpfout) - page = reader.getPage(0) - self.writer.addPage(page) + thepage = self.reader.getPage(page_idx) + thepage.cropBox = RectangleObject(bbox) + self.writer.addPage(thepage) os.unlink(tmpfname) - os.unlink(tmpfout) return 0 def get_raw_bbox(self, filename, resolution=72): |
