logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 20-06-2019 09:27:17

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

réduire le poids des pdf en ligne de commande

Le problèume est dans le titre.
J'ai plétore de fichiers scannés, passés en N&B mais toujours trop lourds.
Y a-t-il une commande en ligne permettant de traiter une sélection de fichiers pour les réduire confortablement.

J'ai vu traîner la solution sur irc et j'ai raté le coche pour la partager dans le tuto du wiki :
https://debian-facile.org/doc:editeurs:pdf

Une âme charitable passant par là serait le bienvenue, voire pourrait recevoir un point choco df avec la solution.
Bien sûr, ce point à attribuer sera démocratiquement posé en grand débat dans la soute des responsables du réglement df concernant la gestion des points... big_smile

Dernière modification par smolski (20-06-2019 09:28:25)


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#2 20-06-2019 10:05:41

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

Je viens de voir ce lien :
https://www.rodinux.fr/2014/11/25/redui … rop-lourd/

J'y teste, il me semble bien provenir du même personnage sur irc... smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#3 20-06-2019 10:18:59

Anonyme
Invité

Re : réduire le poids des pdf en ligne de commande

Bonjour,
et ça  ?  https://debian-facile.org/utilisateurs: … utos:pdftk

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/screen -dNOPAUSE -dBATCH -sOutputFile=PDFde Sortie.pdf  documentàAlleger.pdf



Lagrenouille y donne même un script pour traiter un répertoire entier.

Edit à toto : supprimé le bloc inutilisé indiqué à supprimer.

#4 20-06-2019 10:45:11

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

Ah Put' de moine je l'avais pas saisi celui-là !

Je l'utilise et on voit pour le mettre dans le wiki officiel en l'ajoutant dans le wiki pdf déjà en cours.

Merci à vous deux, je savais bien l'avoir lu quelque part... smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#5 20-06-2019 10:46:58

lagrenouille
CA Debian-Facile
Lieu : Toulouse
Distrib. : bookworm
Noyau : d'olive
(G)UI : xfce4 et awesome
Inscription : 28-03-2012
Site Web

Re : réduire le poids des pdf en ligne de commande


Ce à quoi l'on a pas accès par l'expérience vécue, on a pas d'oreilles pour l'entendre ..Nietzsche
Cela dit, bien que toute notre connaissance s’amorce avec l’expérience, il n’en résulte pas pour autant qu’elle découle dans sa totalité de l’expérience.  E.Kant
une compréhension insane est elle forcément irrationnel ? ..lagrenouille

En ligne

#6 20-06-2019 11:26:31

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

Argh premier essai il me supprime le contenu du pdf et le met de 640ko à 2,2ko et donc y'a pu rien de lisible dedans ! tongue

Je peux pas réduire au pourcentage des fois ? smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#7 20-06-2019 11:46:11

anonyme-15
Invité

Re : réduire le poids des pdf en ligne de commande

Je me sers aussi de ces commandes, il y en a toujours une qui finit par marcher selon les pdf:

Pdftk:
pdftk mon-document.pdf output mon-document.comprimé.pdf compress

Baisse de la taille

convert -compress Zip -density 150x150 2.pdf 3.pdf

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

If the -dPDFSETTINGS=/screen setting is too low quality to suit your needs, replace it with -dPDFSETTINGS=/ebook for better quality, but slightly larger pdfs. Delete the setting altogether for the high quality default, which you can also explicitly call for with -dPDFSETTINGS=/prepress.

**
Baisse de la qualité des images

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dDownsampleColorImages=true -dColorImageResolution=150 -dNOPAUSE  -dBATCH -sOutputFile=b3.pdf b2.pdf

**
Baisse de la taille du texte (effet de flou)

convert -compress Zip b1.pdf b2.pdf

#8 20-06-2019 13:16:41

solar66
Membre
Distrib. : debian stable
Noyau : Linux 5.10.0-9-amd64
(G)UI : cinnamon
Inscription : 23-08-2016

Re : réduire le poids des pdf en ligne de commande

bonjour,
pour réduire des pdf, j'utilise libreoffice; j'ouvre mon pdf avec libre office, puis, fichier---->exporter au format pdf et la, compression JPEG =x % ,et plein d'autres options possibles
thierry

Hors ligne

#9 20-06-2019 13:25:17

lagrenouille
CA Debian-Facile
Lieu : Toulouse
Distrib. : bookworm
Noyau : d'olive
(G)UI : xfce4 et awesome
Inscription : 28-03-2012
Site Web

Re : réduire le poids des pdf en ligne de commande

ah ça ! avec  libre office je savions point big_smile

Ce à quoi l'on a pas accès par l'expérience vécue, on a pas d'oreilles pour l'entendre ..Nietzsche
Cela dit, bien que toute notre connaissance s’amorce avec l’expérience, il n’en résulte pas pour autant qu’elle découle dans sa totalité de l’expérience.  E.Kant
une compréhension insane est elle forcément irrationnel ? ..lagrenouille

En ligne

#10 20-06-2019 16:54:33

nico34
Adhérent(e)
Distrib. : Bullseye
Noyau : Linux 5.10.0-10-amd64
(G)UI : Xfce
Inscription : 25-07-2016

Re : réduire le poids des pdf en ligne de commande

bonjour,

solar66 a écrit :

j'ouvre mon pdf avec libre office, puis, fichier---->exporter au format pdf et la, compression JPEG =x % ,et plein d'autres options possibles
thierry



tu fais comment pour ouvrir avec LO, je viens de tenter 3 fichiers pdf (valides) avec writer, draw, impress.
tout ce que j'obtiens (juste les premières lignes sur 64 pages):

%PDF-1.5
%
1 0 obj<</Contents 3 0 R/Type/Page/Parent 18 0 R/Rotate 0/MediaBox[0 0 612 792]/CropBox[0 0 612 792]/Resources 2 0 R>>
endobj

merci d'éclairer ma lanterne.

Hors ligne

#11 20-06-2019 17:26:39

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

Pour ce genre de commande en série, je préfère utiliser la ligne de commande, en plus de pouvoir faire ça en script, c'est aussi beaucoup plus sûr. smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#12 20-06-2019 18:09:29

solar66
Membre
Distrib. : debian stable
Noyau : Linux 5.10.0-9-amd64
(G)UI : cinnamon
Inscription : 23-08-2016

Re : réduire le poids des pdf en ligne de commande

Pour répondre à nico34,
je ne comprend pas ton problème; clic droit sur ton fichier .pdf, puis ouvrir avec: libreoffice draw. si gros fichier laisser le temps à libreoffice de le charger, puis:
fichier------->exporter au format pdf; dans la fenêtre qui s'ouvre, je ne m'interesse qu'à la page générale: je coche: compression jpeg, 50 ou 70 ou 90 % (selon ce que tu souhaites) et je coche:réduire la résolution des images ------->exporter

Hors ligne

#13 20-06-2019 18:58:48

nico34
Adhérent(e)
Distrib. : Bullseye
Noyau : Linux 5.10.0-10-amd64
(G)UI : Xfce
Inscription : 25-07-2016

Re : réduire le poids des pdf en ligne de commande

merci solar66
exporter, c'est ok (je savais pas qu'on pouvait alléger...)
mon problème c'est l'ouverture, j'ai que des signes et lignes bizares.

j'ai un peu fouiné de mon coté, il faut charger une extension ?

ou problème de version ? la mienne est la 4.3.3.2

il faudra que j'essaie sur stretch avec les mêmes fichiers - je ferais un retour.

sinon désolé, c'est vrai qu'on s'éloigne de la ligne de commande

Hors ligne

#14 20-06-2019 20:37:37

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

nico34 a écrit :

c'est vrai qu'on s'éloigne de la ligne de commande


Toutes solutions font cas sur ce genre de sujet plutôt ouvert.
smile


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#15 20-06-2019 21:00:48

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : réduire le poids des pdf en ligne de commande

J'ai collé il y a très longtemps ce code dans mon bashrc pour avoir la commande sous la main en cas de besoin.
La compression est variable, d'un facteur de 1 à 10 suivant le type de document, avec une bonne qualité en sortie.
A customiser selon les besoins en ajoutant par exemple une option de qualité de compression. smile

function pdfcomp(){
if [ $# -ne 2 ]
then
    echo "Erreur : nombre d'arguments incorrect" >&2
    echo "Usage : pdfcomp fichierréduit.pdf fichieràréduire.pdf"
else
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=$1 $2
fi
}


Tousse antique Ovide !

Hors ligne

#16 20-06-2019 22:42:02

nico34
Adhérent(e)
Distrib. : Bullseye
Noyau : Linux 5.10.0-10-amd64
(G)UI : Xfce
Inscription : 25-07-2016

Re : réduire le poids des pdf en ligne de commande

Re

test avec stretch et oui il y a une option ouvrir avec LO draw
version de LO 5.2.7.2

par contre petits soucis (faudra que je re teste, mais pas ce soir)

sur un fichier j'ai des images retournées, mais pas toutes

et après export en pdf, avec compression jpeg à 50% et résolution passée à 150 dpi (c'était à 300)
je me retrouve avec un fichier de 104 ko (original de 27 ko) et l'autre de 227 ko (original de 132 ko) yikes

La bonne nuit

Hors ligne

#17 20-06-2019 22:54:55

otyugh
CA Debian-Facile
Lieu : Quimperlé/Arzano
Distrib. : Debian Stable
Inscription : 20-09-2016
Site Web

Re : réduire le poids des pdf en ligne de commande

Le meilleur résultat que j'ai eu de loin sans perte significative de qualité c'est :

ps2pdf LARGE.pdf SMALL.pdf



La pire solution, mais réglable, c'était imagemagick

convert lourd.pdf -quality 50% leger.pdf


virtue_signaling.pngpalestine.png
~1821942.svg

Hors ligne

#18 20-06-2019 23:21:54

solar66
Membre
Distrib. : debian stable
Noyau : Linux 5.10.0-9-amd64
(G)UI : cinnamon
Inscription : 23-08-2016

Re : réduire le poids des pdf en ligne de commande

pour nico34, je n'ai pas souvenir d'avoir installer d'extension pour cela, et ma version de libreoffice:

apt list libreoffice

libreoffice/stable,now 1:5.2.7-1+deb9u7 amd64  [installé]

Hors ligne

#19 21-06-2019 01:39:57

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : réduire le poids des pdf en ligne de commande

Le fil est collé dans le wiki, là :
https://debian-facile.org/doc:editeurs: … ds-des-pdf cool

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#20 21-06-2019 22:48:05

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : réduire le poids des pdf en ligne de commande

Philou92 a écrit :

J'ai collé il y a très longtemps ce code dans mon bashrc pour avoir la commande sous la main en cas de besoin.
La compression est variable, d'un facteur de 1 à 10 suivant le type de document, avec une bonne qualité en sortie.
A customiser selon les besoins en ajoutant par exemple une option de qualité de compression. smile

function pdfcomp(){
if [ $# -ne 2 ]
then
    echo "Erreur : nombre d'arguments incorrect" >&2
    echo "Usage : pdfcomp fichierréduit.pdf fichieràréduire.pdf"
else
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=$1 $2
fi
}


Très bien ta fonction, il ne manque que des " autour de $1 et $2, pour gérer
les noms avec des espaces wink

Dernière modification par enicar (21-06-2019 22:50:50)

Hors ligne

#21 22-06-2019 20:28:22

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : réduire le poids des pdf en ligne de commande

enicar a écrit :

Très bien ta fonction, il ne manque que des " autour de $1 et $2, pour gérer
les noms avec des espaces



Effectivement, mais la règle sur nos belles machines à saveur de gnu n'est elle pas de mettre un caractère d'échappement (\) devant les espaces pour que bash interprète correctement les arguments passés à la fonction ?
J'ai du mal à saisir comment avec des guillemets la fonction peut s'en sortir avec une commande du type:

pdfcomp fichier 1.pdf fichier 2.pdf


au lieu de

pdfcomp fichier\ 1.pdf fichier\ 2.pdf



Si tu peux éclairer ma lanterne... smile


Tousse antique Ovide !

Hors ligne

#22 22-06-2019 23:02:47

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : réduire le poids des pdf en ligne de commande

Philou92 a écrit :

Si tu peux éclairer ma lanterne... smile


C'est facile à comprendre. On va utiliser ce petit script pour comprendre :


#! /bin/sh

for arg in "$@"; do
    echo $arg
done
 


Ce script parcours les arguments passé au script et les affiche un par
un, chacun sur une ligne différente.
Si j'appelle ce script (que j'ai appelé arguments.sh) de cette façon :


sh arguments.sh coucou tout le monde
 


on a le retour :


coucou
tout
le
monde
 


Maintenant, si je fais :


sh arguments.sh 'coucou tout le monde'
 


Ce qui donne :


coucou tout le monde
 


Bref, le fait d'avoir entouré la chaîne avec des « ' » permet
d'inclure les espaces dans la chaîne.
Mais on va voir mieux, définissons une variable :


phrase='coucou tout le monde'
 


Ouvrons une parenthèse.
Là je suis obligé d'entourer la chaîne avec des « ' » ou des « " ».
Sinon si je fais :


phrase=coucou tout le monde
 


bash me répond :


-bash: tout : commande introuvable
 


à cause du fait que dans la syntaxe d'exécution d'une commande on peut
la faire précéder de la définition d'une variable que seul ce programme
verra dans son environnement. Fermons la parenthèse.

Revenons à notre « phrase ».
Si je fais :


sh arguments.sh $phrase
 


j'obtiens :


coucou
tout
le
monde
 


Par contre si je fais :


sh arguments.sh "$phrase"
 


j'obtiens :


coucou tout le monde
 


Et voilà, c'est compris ? C'est à cause du découpage en mot qui est fait
par le shell. Pour éviter cela, on doit entourer les variables avec des « " »
car le découpage en mot arrive après l'expansion des variables.

EDIT : Voir ici l'ordre dans lequel bash effectue les différentes opérations.

Dernière modification par enicar (22-06-2019 23:24:16)

Hors ligne

#23 23-06-2019 21:31:57

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : réduire le poids des pdf en ligne de commande

Merci enicar pour ton explication lumineuse, claire et détaillée. smile

J'amende la fonction avec les guillemets.

function pdfcomp(){
if [ $# -ne 2 ]
then
    echo "Erreur : nombre d'arguments incorrect" >&2
    echo "Usage : pdfcomp fichierréduit.pdf fichieràréduire.pdf"
else
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile="$1" "$2"
fi
}


Tousse antique Ovide !

Hors ligne

#24 23-06-2019 22:12:04

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : réduire le poids des pdf en ligne de commande

@Philou92 je t'en prie wink

Hors ligne

Pied de page des forums