====== Export PDF ====== Pour l'export [[menu:ancgl]] des pièces transformées en PDF et la [[:facturation|Facturation]] ===== 1. ImageMagick ===== ImageMagick est installé , il faut attention d'avoir dans le /etc/ImageMagick-6/policy.xml (à partir ubuntu 16.04) Installation d'imageMagick apt install imagemagick ===== 2. PdfTK ===== (Ubuntu 18.04) Si vous utilisez pdftk , il faudra corriger la configuration, le snap empêche son exécution, Pour vérifier type pdftk pdftk est haché (/snap/bin/pdftk) L'erreur est Sorry, home directories outside of /home are not currently supported. See https://forum.snapcraft.io/t/11209 for details. Solutions : - vous le recompilez, (source https://www.pdflabs.com/docs/install-pdftk-on-redhat-or-centos/) - ou vous utilisez une autre distro plus permissive - ou vous activez apparmor et www-data (propriétaire du service http) doit avoir son propre "home", qui sera utilisé , dans ce cas, il faudra travailler dans /home/www-data/tmp et changer la variable $_ENV['TMP'] ==== Compilation de pdftk ==== Ubuntu 18.04 sudo apt install default-jdk-headless ant libcommons-lang3-java libbcprov-java git clone https://gitlab.com/pdftk-java/pdftk.git cd pdftk mkdir lib ln -st lib /usr/share/java/{commons-lang3,bcprov}.jar ant jar cp build/jar/pdftk.jar /usr/local/bin cat < /usr/local/bin/pdftk #!/bin/bash # Start PDFTK /usr/bin/java -cp /usr/share/java/commons-lang3.jar:/usr/share/java/bcprov.jar:/usr/local/lib/pdftk.jar com.gitlab.pdftk_java.pdftk $@ EOF chmod a+x /usr/local/bin/pdftk Et config.inc.php $pdftk="/usr/local/bin/pdftk"; ===== 3. Apache ===== Avec Systemd, apache utilise un répertoire temporaire privé et donc l'appel pour convertir les fichiers en PDF et les estampiller ne fonctionne plus. Pour changer cela , il faut avoir dans /etc/systemd/system/multi-user.target.wants/apache2.service PrivateTmp=false {{tag>configuration pdf}} ===== 4. Conversion de document ===== On utilise libreOffice pour convertir des documents en PDF avec Unoconv (libreOffice) Dans le fichier config.inc.php, on doit avoir define ('GENERATE_PDF','YES'); define ('OFFICE','unoconv '); Plus d'information https://docs.moodle.org/38/en/Universal_Office_Converter_(unoconv)