#!/usr/bin/env bash set -euo pipefail pushd () { command pushd "$@" > /dev/null } popd () { command popd "$@" > /dev/null } args="$(getopt -a -o r:f: --long rotate:,format: -- "$@")" ROTATE="" FORMAT="jpg" usage(){ cat <&2 echo "Unsupported option: $1" usage ;; esac done INTERMEDIARY="./image.${FORMAT}" pushd "$(mktemp -d)" if [ -n "${ROTATE}" ]; then magick "$1" -rotate "${ROTATE}" "${INTERMEDIARY}" else magick "$1" "${INTERMEDIARY}" fi ocrmypdf -q --clean --output-type=none --sidecar tmp.txt \ --image-dpi 300 --deskew --output-type pdfa --jobs 4 \ "${INTERMEDIARY}" - > /dev/null printf "%s" "$(< tmp.txt)" popd ""