linux:conversions
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
linux:conversions [04/08/2008 14:29] – daniel | linux:conversions [21/09/2010 12:54] (Version actuelle) – Commande complète daniel | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Conversions ====== | ====== Conversions ====== | ||
- | ===== Changement de formats ===== | ||
- | convert (binaire d' | ||
- | ===== pdf2swf | + | ===== utf8 ===== |
- | binaire du paquet swftools | + | Pour renomer des fichiers, '' |
- | ===== pdf2img ===== | + | |
- | on peut utiliser gs ou convert... | + | |
- | Avec gs (le %d sert à incrémenter un n° suivant les pages du pdf, ici on sort en png 24bits, à 300dpi) \\ | + | Pour changer l' |
- | '' | + | |
+ | Pour faire les 2 en même temps, avec juste iconf ça peut être (dans le dossier en ISO) | ||
+ | <code bash> | ||
+ | find -type f > fichiers.list | ||
+ | mkdir ../UTF-8 | ||
+ | out_base=../UTF-8 | ||
+ | while read fin; do fout=" | ||
+ | </ | ||
+ | |||
+ | Attention avec du html, il faudra propablement utiliser sed pour modifier aussi le charset s'il est précisé dans le code, ce qui devrait être le cas la plupart du temps, avec par exemple : | ||
+ | <code bash> | ||
+ | find -type f -exec sed -i.bak -e 's/ | ||
+ | </ | ||
+ | |||
+ | (pour éviter les .bak créé en cas de modif, mettre juste -i) | ||
+ | |||
+ | ===== Images et textes ===== | ||
+ | convert (binaire d' | ||
- | ===== Manipulations d' | ||
==== Options de convert ==== | ==== Options de convert ==== | ||
La liste est sur http:// | La liste est sur http:// | ||
La liste des couleurs utilisables http:// | La liste des couleurs utilisables http:// | ||
+ | |||
+ | Quelques examples : | ||
+ | < | ||
+ | # resize pour rentrer dans un carré de 800x800 dans un dossier resized | ||
+ | for f in *; do convert $f -resize 800x800 resized/$f; done | ||
+ | # resize et conversion en même temp, il suffit de changer l' | ||
+ | convert fichier1.png -resize 25% fichier2.jpg | ||
+ | </ | ||
==== composite ==== | ==== composite ==== | ||
- | pour décaler une image over.png sur une autre (souvent un fond...) under.png de 25 pixel vers la droite et 50 pixels vers le bas :\\ | + | Un autre binaire du paquet imagemagick. |
+ | |||
+ | Ex. pour décaler une image over.png sur une autre (souvent un fond...) under.png de 25 pixel vers la droite et 50 pixels vers le bas :\\ | ||
'' | '' | ||
Ligne 27: | Ligne 49: | ||
'' | '' | ||
* crop auto avec [[http:// | * crop auto avec [[http:// | ||
+ | |||
+ | |||
+ | ==== pdf2swf ==== | ||
+ | binaire du paquet swftools | ||
+ | |||
+ | ==== img2swf ==== | ||
+ | le paquet swf tools permet de convertir jpeg et png en swf, avec les utilitaires qui vont bien pour jouer sur les tailles et les décalages. | ||
+ | |||
+ | ==== exemple png2swf, avec décalage ==== | ||
+ | Il faut mettre des png "plein pot" (pour pouvoir zoomer) dans des swf de 600x820, en décalalnt le résultat pour équilibrer les blancs. Le gros du travail est le script awk (qui génère l' | ||
+ | |||
+ | <code bash> | ||
+ | for f in $src/*.png; do \ | ||
+ | echo; echo $f; \ | ||
+ | eval $(identify $f|sed -e ' | ||
+ | {x=$1; y=$2}; | ||
+ | END { | ||
+ | a=60000/x; b=82000/ | ||
+ | if (a < b) { | ||
+ | scale=a; decaly=(820-y*scale/ | ||
+ | if (decaly >20) arg=" | ||
+ | else arg=" | ||
+ | } else { | ||
+ | scale=b; decalx=(600-(x*scale/ | ||
+ | }; | ||
+ | print " | ||
+ | }'); \ | ||
+ | echo "On obtient scale=$scale et arg=$arg"; | ||
+ | png2swf -s $scale -o tmp.swf $f; \ | ||
+ | swfcombine -T -o $swf/ | ||
+ | done; | ||
+ | </ | ||
+ | |||
+ | ===== pdf2img ===== | ||
+ | on peut utiliser gs ou convert... | ||
+ | |||
+ | Avec gs (le %d sert à incrémenter un n° suivant les pages du pdf, ici on sort en png 24bits, à 300dpi) \\ | ||
+ | '' | ||
+ | |||
+ | ===== img2pdf ===== | ||
+ | avec convert puis pdftk | ||
+ | <code bash> | ||
+ | # pour convertir les pages 02.jpg, 04.jpg, etc. en pdf, avec rotation (90° horaire) | ||
+ | for i in $(seq -w 2 2 96); do echo $i; convert -rotate 90 $i.jpg $i.pdf; done; | ||
+ | # puis concat en un seul pdf | ||
+ | for i in $(seq -w 2 2 96); do in=" | ||
+ | pdftk $in cat output resultat.pdf | ||
+ | # on aurait aussi pu demander à pdftk de faire la rotation (E pour East soit 90° horaire, sinon W ou S) | ||
+ | pdftk $in cat 1-endE output resultat.pdf | ||
+ | </ | ||
+ | |||
+ | ===== Manipulation de pdf ===== | ||
+ | Tous est dans pdftk... | ||
+ | ==== Découper | ||
+ | Pour faire un pdf par page : | ||
+ | '' | ||
+ | |||
+ | (man pdftk pour plus d' | ||
+ | |||
+ | ==== Regrouper ==== | ||
+ | '' |
linux/conversions.1217852974.txt.gz · Dernière modification : 04/08/2008 14:29 de daniel