Je crée quelques documents dans Libre Office et je dois toujours les envoyer en tant que .pdf
.
mais chaque fois que j'oublie de l'exporter au format pdf, existe-t-il un moyen de convertir automatiquement le document .odt
en pdf
à chaque fois que je sauvegarde le document?
Je n'ai que 4 documents environ, je continue à y apporter des modifications. Ainsi, chaque fois que je modifie et sauvegarde la odt
j'ai besoin que cette modification soit mise à jour dans le fichier pdf correspondant.
Ps: Je comprends que unoconv
peut être utilisé pour convertir en ligne de commande, mais existe-t-il un moyen de le faire automatiquement?
Un autre ps: j'ai découvert qu'il existait quelque chose appelé inotify et inotify-tools, qui peut être utilisé pour déclencher des événements lorsqu'un fichier est modifié. Mais je ne sais pas comment l'utiliser.
Exemple rapide et incorrect utilisant le code du projet pyinotify [http://github.com/seb-m/pyinotify]
Vous devrez modifier WATCHED_DIR dans votre répertoire contenant les fichiers ODT. Pensez également à installer unoconv en premier.
# Notifier example from tutorial
#
# See: http://github.com/seb-m/pyinotify/wiki/Tutorial
#
# odtwatcher.py
import os
import pyinotify
import subprocess
WATCHED_DIR = '/tmp/test'
wm = pyinotify.WatchManager() # Watch Manager
mask = pyinotify.IN_MODIFY
class EventHandler(pyinotify.ProcessEvent):
def process_IN_MODIFY(self, event):
fname = event.pathname
if os.path.splitext(fname)[1] == '.odt':
print 'MODIFIED: ', fname
args = ['unoconv', '-f', 'pdf', fname]
try:
subprocess.Popen(args)
except OSError as e:
print 'Could not convert file %s to PDF. Error %s' % (fname, str(e))
if __== '__main__':
handler = EventHandler()
notifier = pyinotify.Notifier(wm, handler)
wdd = wm.add_watch(WATCHED_DIR, mask, rec=True)
notifier.loop()
Enregistrez ceci sous le nom odtwatcher.py puis exécutez-le en arrière-plan.
python odtwatcher.py &
Essayez cette extension (fonctionne bien avec LibreOffice sur Gnome-Shell/Quantal):
MultiSave vous permet de sauvegarder simultanément un document aux formats OpenDocument, MS Office et/ou PDF, à votre choix.
MultiFormatSave est une nouvelle version mise à jour de MultiSave, conçue pour mieux fonctionner avec les révisions récentes de Libreoffice:
MultiFormatSave vous permet de sauvegarder simultanément un document aux formats OpenDocument, MS Office et/ou PDF au choix de Writer, Calc ou Impress.
Forked à partir de l'extension starXpert MultiSave
Assurez-vous de choisir la version appropriée pour votre version de LibreOffice, par exemple. 1.3.2 pour LO 3.5 et 3.6.
Vous pouvez également exécuter libreoffice à partir de la ligne de commande à cette fin. Cela vous donne l'avantage de la conversion par lots, mais des fichiers uniques sont également possibles. Cet exemple convertit tous les fichiers ODT du répertoire actuel en PDF:
libreoffice --headless --convert-to pdf *.odt
Obtenez plus d'informations sur les options de ligne de commande avec:
man libreoffice
Remarque: En raison de bug 37531 , vous devez fermer toutes les instances en cours d'exécution de LibreOffice avant que cette commande ne fonctionne.
Cet article explique comment convertir très simplement odt en pdf à partir de la ligne de commande en utilisant CUPS.
http://www.yamamoto.com.ar/blog/?p=5
Vous pouvez en fait convertir par lots tous les fichiers PDF d'un répertoire, ce qui vous évitera d'avoir à vous souvenir d'exporter au format PDF à chaque fois!
J'espère que cela t'aides!