Vous n'êtes pas identifié(e).
Dernière modification par smolski (20-06-2019 09:28:25)
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Lagrenouille y donne même un script pour traiter un répertoire entier.
Edit à toto : supprimé le bloc inutilisé indiqué à supprimer.
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
site de mon association 1901
https://le-caillou.le-pic.org
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Hors ligne
site de mon association 1901
https://le-caillou.le-pic.org
Hors ligne
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
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Hors ligne
Hors ligne
c'est vrai qu'on s'éloigne de la ligne de commande
Toutes solutions font cas sur ce genre de sujet plutôt ouvert.
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Tousse antique Ovide !
Hors ligne
Hors ligne
Hors ligne
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
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.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
Dernière modification par enicar (21-06-2019 22:50:50)
Hors ligne
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:
au lieu de
Si tu peux éclairer ma lanterne...
Tousse antique Ovide !
Hors ligne
Si tu peux éclairer ma lanterne...
C'est facile à comprendre. On va utiliser ce petit script pour comprendre :
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 :
on a le retour :
Maintenant, si je fais :
Ce qui donne :
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 :
Ouvrons une parenthèse.
Là je suis obligé d'entourer la chaîne avec des « ' » ou des « " ».
Sinon si je fais :
bash me répond :
à 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 :
j'obtiens :
Par contre si je fais :
j'obtiens :
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
Tousse antique Ovide !
Hors ligne
Hors ligne