====== Pdf ====== 1ère commande à utiliser **pdfinfo** qui donne pas mal d'info sur le pdf Title: Creator: Adobe InDesign CC (Macintosh) Producer: 3-Heights(TM) PDF Optimization Shell 4.7.19.0 (http://www.pdf-tools.com) CreationDate: Fri Dec 5 10:58:03 2014 ModDate: Fri Jan 6 14:49:07 2017 Tagged: no Pages: 477 Encrypted: no Page size: 595.266 x 841.88 pts (A4) File size: 137914052 bytes Optimized: yes PDF version: 1.7 ===== Créer un pdf ====== Installer le paquet **imagemagick** Pour par exemple créer un pdf à partir d'image convert img1.jpg fichier.pdf convert img1.jpg img2.jpg img3.jpg fichier pdf convert img*.jpg fichier.pdf Sinon il y a **gimp** ou **scribus** ===== Optimiser un pdf ===== ==== Avec pdf2ps et ps2pdf ==== J'ai créé un pdf à partir d'une image sous GIMP et celui-ci pesait 13Mo. Grace aux commandes suivantes, le pdf pèse maintenant 1,3Mo ! Attention, ces commandes écrasent le pdf original, faite une copie si vous voulez garder l'original. pdf2ps fichier.pdf ps2pdf fichier.ps et voila ;) Autre exemple concret qui n'a pas marché, un pdf de 40Mo converti en ps pèse 7.9Go puis reconverti en pdf pèse 2Go ==== Avec GhostScript ==== Autre méthode ( merci http://astuces.absolacom.com/ubuntu/reduire-la-taille-dun-pdf-sur-linux/ ) gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dPDFSETTINGS=/printer -sOUTPUTFILE=PDFdeSortie.pdf -f PDFaAlleger.pdf Remplacez bien sûr, PDFdeSortie et PDFaAlleger par le nom voulu et le nom de votre document. l’option **-dPDFSETTINGS** peut prendre les valeurs suivantes: * **/screen** pour un document destiné à l’écran * **/ebook** pour une qualité entre screen et printer (suite aux commentaires de l’article) * **/printer** pour un document destiné à l’impression * **/prepress** pour un document destiné à l’impression professionnelle Pour info, j’ai utilisé l’option /screen pour un PDF de 40Mo et j’ai obtenu (après une bonne minute de traitement) un PDF de 5.1 Mo.\\ Le document obtenu s’ouvre bien plus rapidement et la qualité des pages, si elle a légèrement souffert, reste largement suffisante pour lire le texte et les images.\\ Avec l’option /printer, la taille du document obtenu est de 13.5 Mo sans perte de qualité visible à l’œil par rapport au document d’origine. Mais le document est quand même plus rapide à l’ouverture. Un exemple avec un pdf de 176Mo bourré de photo. * avec l'option /printer j'ai obtenu un pdf de 90Mo et le pdf a gardé les textes en vectoriels qui restent donc copiable et lisible en zoomant * avec l'option /screen 9.8Mo (45min de traitement quand même) le pdf a le texte sous forme d'image et une compression assez forte du jpeg ce qui rend a peine lisible du petit texte et un aspect "crade" * avec l'option /ebook 81.5Mo en 11min ca reste pour moi le meilleur modèle meme si pour du web la taille est quand même énorme... Si on cherche un peu sur le net, Adobe nous donne tous les détails de ces différents mode de compression ( https://helpx.adobe.com/acrobat/using/pdf-conversion-settings.html#adobe_pdf_presets ) On voit alors que le mode /ebook conserve les polices, couleurs etc.. >Rich Content PDF (Acrobat Pro DC) >Creates accessible PDF files that include tags, hyperlinks, bookmarks, interactive elements, and layers. This set of options uses PDF 1.6 and embeds subsets of all fonts. It also optimizes files for byte >serving. These PDF files can be opened in Acrobat and Reader 7.0 and later. (The Rich Content PDF preset is in the Extras folder). >Note: This preset was called eBook in earlier versions of some applications. Et que le mode screen transforme tout en image >Smallest File Size >Creates PDF files for displaying on the web or an intranet, or for distribution through an email system. This set of options uses compression, downsampling, and a relatively low image resolution. It converts all colors to sRGB, and (for Adobe Acrobat Distiller-based conversions) does not embed fonts. It also optimizes files for byte serving. These PDF files can be opened in Acrobat and Reader 6.0 and later. autre commande gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default \ -dNOPAUSE -dQUIET -dBATCH -dDetectDuplicateImages \ -dCompressFonts=true -r150 -sOutputFile=output.pdf input.pdf La doc avec toutes les options => https://ghostscript.com/doc/current/Ps2pdf.htm Je vais tester celle la gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen \ -dNOPAUSE -dEmbedAllFonts=true -dDetectDuplicateImages=true -r300 \ -sOutputFile=output.pdf input.pdf ==== Avec ImageMagick ==== Autre méthode avec ImageMagick convert -density 200x200 -quality 60 -compress jpeg input.pdf output.pdf Cette commande converti le pdf en image exactement comme le fait le profil /screen sauf que c'est beaucoup plus rapide. 8min au lieu de 45min et pour un résultat de 168Mo vers 33Mo. De plus vous pouvez facilement ajuster la densité et la qualité. Pour spécifier un répertoire de travail temporaire autre que le /tmp par défaut, ajouter l'option -define registry:temporary-path=/monrepertoiretemp Le plus amusant dans tout ca, c'est que imagemagick utilise la commande gs pour faire cette conversion comme on peut le voir avec ps gs -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 -sDEVICE=pam -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -r200x200 -dUseCIEColor -sOutputFile=./magick-DcOUhFLE-%08d -f./magick-O7YDJ6Lp -f./magick-4vxlHEMa Lien intéressant sur les options de convert => http://stackoverflow.com/questions/27458437/make-imagemagick-use-external-hdd-for-temporary-files/27458977#27458977 Une autre commande convert -units PixelsPerInch myPic.pdf -density 300 fileout.pdf ===== Extraire, fusionner des pages d'un fichier pdf ===== Installez **pdftk** sudo apt-get pdftk exemple => https://doc.ubuntu-fr.org/pdftk