Skip to content

Commit

Permalink
PDF watermark scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
cfgnunes committed Jan 6, 2025
1 parent 64d81df commit 96d1610
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 0 deletions.
39 changes: 39 additions & 0 deletions Document PDF/PDF tools/Add PDF watermark (overlay)
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/usr/bin/env bash

# Source the script 'common-functions.sh'.
SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
ROOT_DIR=$(grep --only-matching "^.*scripts[^/]*" <<<"$SCRIPT_DIR")
source "$ROOT_DIR/common-functions.sh"

_main() {
local input_files=""
local output_dir=""

# Execute initial checks.
_check_dependencies "command=qpdf"
_display_wait_box "0"
input_files=$(_get_files "par_type=file; par_select_mime=application/pdf")
output_dir=$(_get_output_dir "par_use_same_dir=false")

sleep 0.2 # Avoid 'wait_box' open before.
TEMP_DATA_TASK=$(_display_file_selection_box "PDF files | *.pdf")

# Execute the function '_main_task' for each file in parallel.
_run_task_parallel "$input_files" "$output_dir"
_display_result_box "$output_dir"
}

_main_task() {
local input_file=$1
local output_dir=$2
local output_file=""
local std_output=""

# Run the main process.
output_file=$(_get_output_filename "$input_file" "$output_dir" "par_extension_opt=preserve")
# NOTE: Older 'qpdf' versions do not support ' -- ' in the command line.
std_output=$(qpdf --overlay "$TEMP_DATA_TASK" --repeat=1 -- "$input_file" "$output_file" 2>&1)
_check_output "$?" "$std_output" "$input_file" "$output_file" || return 1
}

_main "$@"
39 changes: 39 additions & 0 deletions Document PDF/PDF tools/Add PDF watermark (underlay)
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/usr/bin/env bash

# Source the script 'common-functions.sh'.
SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
ROOT_DIR=$(grep --only-matching "^.*scripts[^/]*" <<<"$SCRIPT_DIR")
source "$ROOT_DIR/common-functions.sh"

_main() {
local input_files=""
local output_dir=""

# Execute initial checks.
_check_dependencies "command=qpdf"
_display_wait_box "0"
input_files=$(_get_files "par_type=file; par_select_mime=application/pdf")
output_dir=$(_get_output_dir "par_use_same_dir=false")

sleep 0.2 # Avoid 'wait_box' open before.
TEMP_DATA_TASK=$(_display_file_selection_box "PDF files | *.pdf")

# Execute the function '_main_task' for each file in parallel.
_run_task_parallel "$input_files" "$output_dir"
_display_result_box "$output_dir"
}

_main_task() {
local input_file=$1
local output_dir=$2
local output_file=""
local std_output=""

# Run the main process.
output_file=$(_get_output_filename "$input_file" "$output_dir" "par_extension_opt=preserve")
# NOTE: Older 'qpdf' versions do not support ' -- ' in the command line.
std_output=$(qpdf --underlay "$TEMP_DATA_TASK" --repeat=1 -- "$input_file" "$output_file" 2>&1)
_check_output "$?" "$std_output" "$input_file" "$output_file" || return 1
}

_main "$@"

0 comments on commit 96d1610

Please sign in to comment.