1
0
Fork 0

optimisation mineure de la commande GS et corrections mineures

This commit is contained in:
mregg-9182 2021-08-07 00:19:18 +02:00
parent 86227c46ba
commit 9c6d2db6fb
1 changed files with 6 additions and 8 deletions

View File

@ -93,16 +93,14 @@ parse_params() {
# vérifie les logiciels prérequis
check_deb_pkg() {
dpkg --version &>/dev/null \
|| die "${RED}Erreur : Le gestionnaire de paquet 'dpkg' n'est pas présent sur ce système (utilisez Ubuntu, Linux Mint ou Debian).${NOFORMAT}"
dpkg --version &>/dev/null || die "${RED}Erreur : Le gestionnaire de paquet 'dpkg' n'est pas présent sur ce système (utilisez Ubuntu, Linux Mint ou Debian).${NOFORMAT}"
required_pkg=''
for pkg in "$@"; do
dpkg -s $pkg &>/dev/null || required_pkg="$required_pkg $pkg"
done
[[ -z $required_pkg ]] || die "${RED}Erreur : Ce script requiert certains logiciels pour fonctionner. \
Exécutez la commande suivante pour le/les installer :
[[ -z $required_pkg ]] || die "${RED}Erreur : Ce script requiert certains logiciels pour fonctionner. Exécutez la commande suivante pour le/les installer :
sudo apt-get update && sudo apt-get install$required_pkg${NOFORMAT}"
}
@ -146,15 +144,15 @@ msg "Résolution sélectionnée : $resolution DPI"
# création du nouveau fichier sans watermark
ofile_index=0
for ifile in "${input_files[@]}"; do
msg "${GREEN}Traitement du fichier '$ifile'.${NOFORMAT}"
msg "${GREEN}Début du traitement du fichier '$ifile'.${NOFORMAT}"
inputfile_dir=$(dirname "$ifile")
tmp_dir=$(mktemp --directory --tmpdir="$inputfile_dir" .watermark_remover_XXXXXXXXXX)
inputfile_wo_ext=$(echo "$ifile" | rev | cut -d_ -f2- | rev)
inputfile_wo_ext=$(echo "$ifile" | rev | cut -d. -f2- | rev)
tmpfiles_prefix=$tmp_dir/$(basename "$inputfile_wo_ext")
msg "Réécriture du document PDF dans un nouveau fichier (ça peut prendre beaucoup de temps)..."
gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -dPDFSETTINGS=/$pdf_quality -dCompatibilityLevel=1.7 -sOutputFile="${tmpfiles_prefix}_1.pdf" "$ifile" &>>$log_file
gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -dPDFSETTINGS=/$pdf_quality -dAutoRotatePages=/None -dCompatibilityLevel=1.7 -sOutputFile="${tmpfiles_prefix}_1.pdf" "$ifile" &>>$log_file
msg "Décompression du document PDF..."
pdftk "${tmpfiles_prefix}_1.pdf" output "${tmpfiles_prefix}_2.pdf" uncompress verbose &>>$log_file
@ -180,4 +178,4 @@ for ofile in "${output_files[@]}"; do
done
# À faire :
# - option pour changer l'emplacement du fichier tmp et du fichier output
# - option pour changer l'emplacement du fichier tmp et du fichier output