aboutsummaryrefslogtreecommitdiff
path: root/scripts/.local/bin/personal/reMerge
diff options
context:
space:
mode:
authordavidpkj <davidpenkow1@gmail.com>2023-08-27 16:36:12 +0200
committerdavidpkj <davidpenkow1@gmail.com>2023-08-27 16:36:12 +0200
commit8ec89f25e98c83bd348856f767ae2d193583d91a (patch)
treeef3fc77835de77bde0b74d8e6146932843ac8fa5 /scripts/.local/bin/personal/reMerge
parentd6c6ff9997cc7d8b48a77dd8880d2cab3481d462 (diff)
Reorganize scripts
Diffstat (limited to 'scripts/.local/bin/personal/reMerge')
-rwxr-xr-xscripts/.local/bin/personal/reMerge44
1 files changed, 44 insertions, 0 deletions
diff --git a/scripts/.local/bin/personal/reMerge b/scripts/.local/bin/personal/reMerge
new file mode 100755
index 0000000..654d0a3
--- /dev/null
+++ b/scripts/.local/bin/personal/reMerge
@@ -0,0 +1,44 @@
+#!/usr/bin/env python3
+
+# Generates a PDF file from slides for easy note taking
+# David Penkowoj, 2023-04-17
+
+import os
+import sys
+import getpass
+import pikepdf
+import subprocess
+
+file = sys.argv[1]
+filename = os.path.splitext(file)[0]
+key = getpass.getpass()
+
+width = 191
+height = width / 4 * 3
+tmpfile = "/tmp/reMergeScaled.pdf"
+command = f"cpdf -scale-to-fit \"{width}mm {height}mm\" {file} owner={key} -o {tmpfile}"
+
+subprocess.run(command, shell=True)
+
+pdf = pikepdf.Pdf.open("/home/me/documents/remarkable/pdotsa4.pdf")
+background = pdf.pages[0]
+
+overlay_pdf = pikepdf.Pdf.open("/tmp/reMergeScaled.pdf")
+
+for overlay in overlay_pdf.pages:
+ pdf.pages.append(background)
+
+ x2 = background.MediaBox[2]
+ y2 = background.MediaBox[3]
+ x1 = x2 - (overlay.MediaBox[2] - overlay.MediaBox[0])
+ y1 = y2 - (overlay.MediaBox[3] - overlay.MediaBox[1])
+
+ rect = pikepdf.Rectangle(x1, y1, x2, y2)
+
+ pdf.pages[-1].add_overlay(overlay, rect, shrink=False, expand=False)
+
+del pdf.pages[0]
+
+pdf.save(f"{filename}_notes.pdf")
+subprocess.run(f"rm -rf {tmpfile}", shell=True)
+