diff options
Diffstat (limited to 'home-manager/packages/scripts/apps/con2pdf')
-rwxr-xr-x | home-manager/packages/scripts/apps/con2pdf | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/home-manager/packages/scripts/apps/con2pdf b/home-manager/packages/scripts/apps/con2pdf deleted file mode 100755 index 9cadc376..00000000 --- a/home-manager/packages/scripts/apps/con2pdf +++ /dev/null @@ -1,152 +0,0 @@ -#! /usr/bin/env dash - -# shellcheck source=/dev/null -SHELL_LIBRARY_VERSION="1.1.4" . %SHELL_LIBRARY_PATH - - -# needed for help() and version -# shellcheck disable=2034 -AUTHORS="Soispha"; -# shellcheck disable=2034 -YEARS="2023"; -# shellcheck disable=2034 -VERSION="1.0.0"; - -help() { -cat << EOF -Scan images and turn them into a pdf. - -Usage: - $NAME [--help|--version|--out-dir|--num-pages|--method] --name --device - -Options: - --out-dir | -o - Path to place the generated pdf files (default: ./pdf). - --name | -n - Name for the pdf files (e.g. "\$name"_1.pdf). - --num-pages | -p - Number of pages to merge into one pdf (default: 1). - --device | -d - Device used for scanning. - --method | -m - Method to use for scanning (default: ADF). - --help | -h - Display this help and exit. - --version | -v - Display version and copyright information and exit. -EOF -} - -scan() { - number_of_pages="$1"; - device="$2"; - output_directory="$3"; - name="$4"; - method="$5"; - - [ -z "$number_of_pages" ] && die "Parameter 'number_of_pages' is not set!" - [ -z "$device" ] && die "Parameter 'device' is not set!" - [ -z "$output_directory" ] && die "Parameter 'output_directory' is not set!" - [ -z "$name" ] && die "Parameter 'name' is not set!" - [ -z "$method" ] && die "Parameter 'method' is not set!" - - tiff_temp_path="$(mktmp -d)"; - cd "$tiff_temp_path" || die "Bug" - - msg "Started scanning..."; - if [ "$method" = "Flatbed" ]; then - do_until_success \ - "scanimage --format=tiff --progress --source='$method' --device='$device' --output-file=1.tiff" \ - "warn 'Retrying scan, as we assume a network error!'" - else - for i in $(seq "$number_of_pages");do - do_until_success \ - "scanimage --format=tiff --progress --source='$method' --device='$device' --batch=%d.tif --batch-increment='$number_of_pages' --batch-start='$i'" \ - "warn 'Retrying scan, as we assume a network error!'" - - - if [ "$number_of_pages" -ne 1 ];then - msg "Finished turn, please change side!"; - readp "Press enter to continue" noop - fi - done - fi - - msg "Creating output directory..."; - mkdir "$output_directory"; - cd "$output_directory" || die "Bug" - - counter=0; - msg "Converting images to pdfs..."; - while read -r scanned_image_a;do - if [ "$number_of_pages" -ne 1 ];then - scanned_image_b_set=false; - if [ -z "$scanned_image_b" ];then - scanned_image_b="$i" - scanned_image_b_set=true; - : $((counter += 1)) - fi - - if [ -n "$scanned_image_a" ] && [ "$scanned_image_b_set" = false ];then - convert "$scanned_image_b" "$scanned_image_a" -compress jpeg -quality 100 "$name"_"$counter".pdf - fi - else - : $((counter += 1)) - convert "$scanned_image_a" -compress jpeg -quality 100 "$name"_"$counter".pdf - fi - - done < "$(tmp "fd . '$tiff_temp_path' | sort -n")" -} - -for input in "$@"; do - case "$input" in - "--help" | "-h") - help; - exit 0; - ;; - "--version" | "-v") - version; - exit 0; - ;; - esac -done - -number_of_pages="1"; -unset device; -output_directory="$(pwd)/pdf"; -unset name; -method="ADF"; - -while [ "$#" -ne 0 ]; do - case "$1" in - "--help" | "-h") - ;; - "--version" | "-v") - ;; - "--out-dir" | "-o") - shift 1; - output_directory="$1"; - ;; - "--name" | "-n") - shift 1; - name="$1"; - ;; - "--num-pages" | "-p") - shift 1; - number_of_pages="$1"; - ;; - "--device" | "-d") - shift 1; - device="$1"; - ;; - "--method" | "-m") - shift 1; - method="$1"; - ;; - *) - die "Command line arg $1 does not exist. See --help for a list."; - ;; - esac - shift 1; -done -scan "$number_of_pages" "$device" "$output_directory" "$name" "$method"; |