diff --git a/binaries.org b/binaries.org index 199befd..ba76471 100644 --- a/binaries.org +++ b/binaries.org @@ -378,7 +378,7 @@ List of useful programs: - =inkscape= - =gs= - =pdfcrop= -- =pdftk= +- =qpdf= *** PDF to PNG #+begin_src bash @@ -439,7 +439,7 @@ pdftrim_function() { \ *** PDF Extract Pages #+begin_src bash pdfextract_function() { \ - if command -v pdftk &> /dev/null; then + if command -v qpdf &> /dev/null; then pages=$(echo -e "get first\ndelete first\nextract i-j" | rofi -i -dmenu -p "Extract pages") if [ -z "$pages" ]; then @@ -448,21 +448,21 @@ pdfextract_function() { \ case "$pages" in "get first") - if command -v pdftk &> /dev/null; then - pdftk "$filename_with_extension" cat 1-1 output "$filename_without_extension.first.pdf" + if command -v qpdf &> /dev/null; then + qpdf --pages "$filename_with_extension" 1 -- "$filename_with_extension" "$filename_without_extension.first.pdf" fi ;; "delete first") - if command -v pdftk &> /dev/null; then - pdftk "$filename_with_extension" cat 2-end output "$filename_with_extension" + if command -v qpdf &> /dev/null; then + qpdf --pages "$filename_with_extension" 2-z -- "$filename_with_extension" "$filename_with_extension" fi ;; "extract i-j") # TODO page_i=$(rofi -dmenu -p "From") page_j=$(rofi -dmenu -p "To") - if command -v pdftk &> /dev/null; then - pdftk "$filename_with_extension" cat "$page_i-$page_j" output "$filename_with_extension.slice.pdf" + if command -v qpdf &> /dev/null; then + qpdf --pages "$filename_with_extension" "$page_i-$page_j" -- "$filename_with_extension" "$filename_with_extension.slice.pdf" fi ;; esac @@ -474,9 +474,9 @@ pdfextract_function() { \ #+begin_src bash pdf_delete_first_page_function() { \ if command -v stapler &> /dev/null; then - stapler del "$filename_with_extension" 1 /tmp/pdftk_out.pdf && mv /tmp/pdftk_out.pdf "$filename_with_extension" - elif command -v pdftk &> /dev/null; then - pdftk "$filename_with_extension" cat 2-end output /tmp/pdftk_out.pdf && mv /tmp/pdftk_out.pdf "$filename_with_extension" + stapler del "$filename_with_extension" 1 /tmp/qpdf_out.pdf && mv /tmp/qpdf_out.pdf "$filename_with_extension" + elif command -v qpdf &> /dev/null; then + qpdf --pages "$filename_with_extension" 2-z -- "$filename_with_extension" /tmp/qpdf_out.pdf && mv /tmp/qpdf_out.pdf "$filename_with_extension" fi } #+end_src @@ -484,10 +484,10 @@ pdf_delete_first_page_function() { \ *** Remove Annotations #+begin_src bash pdf_remove_annotations_function() { \ - if command -v pdftk &> /dev/null; then - pdftk "$filename_with_extension" output /tmp/uncompressed.pdf uncompress + if command -v qpdf &> /dev/null; then + qpdf --qdf "$filename_with_extension" /tmp/uncompressed.pdf LANG=C sed -n '/^\/Annots/!p' /tmp/uncompressed.pdf > /tmp/stripped.pdf - pdftk /tmp/stripped.pdf output "$filename_with_extension" compress + qpdf /tmp/stripped.pdf "$filename_with_extension" fi } #+end_src diff --git a/doom.org b/doom.org index 86aac4e..fbd3a01 100644 --- a/doom.org +++ b/doom.org @@ -360,7 +360,7 @@ Function that opens current pdf page as an SVG file with Inkscape. (setq filename (read-string "Enter file name:" (car (split-string (file-name-base buffer-file-name) "_")))) (setq filename (read-string "Enter file name:"))) (setq filepath (concat "/tmp/" filename ".svg")) - (shell-command (concat "pdftk " buffer-file-name " cat " (number-to-string (pdf-view-current-page)) " output /tmp/pdf_page.pdf")) + (shell-command (concat "qpdf --pages " buffer-file-name " " (number-to-string (pdf-view-current-page)) " -- " buffer-file-name " /tmp/pdf_page.pdf")) (shell-command (concat "pdf2svg /tmp/pdf_page.pdf " filepath)) (start-process "" nil "inkscape" filepath)) diff --git a/install.org b/install.org index c2cbe7c..134618c 100644 --- a/install.org +++ b/install.org @@ -286,7 +286,7 @@ systemctl --user enable --now wireplumber.service #+begin_src bash echo "==> PDF and Image Utilities" paru -S --needed \ - pdf2svg pdftk pdfarranger \ + pdf2svg qpdf pdfarranger \ imagemagick \ maim flameshot \ unclutter \ @@ -336,8 +336,6 @@ systemctl --user enable --now syncthing echo "==> GTK Theme" paru -S --needed \ lxappearance \ - arc-gtk-theme \ - xcursor-breeze \ gtk2fontsel #+end_src diff --git a/scripts/install-main.sh b/scripts/install-main.sh index 2a14115..093ea2a 100755 --- a/scripts/install-main.sh +++ b/scripts/install-main.sh @@ -71,7 +71,7 @@ paru -S --needed \ echo "==> PDF and Image Utilities" paru -S --needed \ - pdf2svg pdftk pdfarranger \ + pdf2svg qpdf pdfarranger \ imagemagick \ maim flameshot \ unclutter \ diff --git a/zathura.org b/zathura.org index 17842be..ff675ba 100644 --- a/zathura.org +++ b/zathura.org @@ -99,7 +99,7 @@ tmpfile=/tmp/pdf_page.pdf # Ideally would get the page from Zathura... # pagenum=$(rofi -dmenu -p "Page Number") -pdftk "$1" cat $2 output "$tmpfile.pdf" && \ +qpdf --pages "$1" "$2" -- "$1" "$tmpfile.pdf" && \ pdf2svg "$tmpfile.pdf" "$tmpfile.svg" && \ inkscape "$tmpfile.svg" #+end_src