IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Exporter par lot des documents OpenOffice en PDF [Résolu]
Options
mjd
posté 1 Nov 2017, 13:13
Message #1


Nouveau Membre


Groupe : Membres
Messages : 5
Inscrit : 8 Dec 2010
Membre no 162 126



Bonjour à tous,

C'est ma première question ici et j'espère poster au bon endroit.

J'ai trouvé ici : http://forum.macbidouille.com/index.php?sh...p;#entry3087504
un script permettant de convertir en PDF des documents .doc.

Comme je suis intéressé par l'export simultané de plusieurs documents (.odt ou .ods) sans avoir à les ouvrir, j'ai tenté de l'appliquer à la conversion de documents .odt (OpenOffice) mais je n'ai jamais réalisé ni utilisé de scripts et suis donc tombé sur un os et je ne m'en sors pas.

Auriez-vous la gentillesse de m'aider, cela me permettra de faire ce que j'ai à faire mais aussi et surtout de me plonger dans les monde des scripts ?

Si cela est réalisable par le Terminal, je suis tout ouïe.

Merci

Ce message a été modifié par mjd - 1 Nov 2017, 13:39.


--------------------
AOO 4.1.4 / MacOS X 10.13.1 High Sierra / RAM 8Go / TimeMachine
Go to the top of the page
 
+Quote Post
audionuma
posté 1 Nov 2017, 14:23
Message #2


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 2 031
Inscrit : 27 Apr 2004
Membre no 18 176



Bonjour,
un exemple ici :
https://gist.github.com/diogo-almeida/9339203

Par exemple :

Code
$ /Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf --outdir /chemin/destination /chemin/source/*.odt




--------------------
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la liste
Futur ex-macbidouilleur, sous Dell / Ubuntu depuis 2021 !
Go to the top of the page
 
+Quote Post
mjd
posté 1 Nov 2017, 14:51
Message #3


Nouveau Membre


Groupe : Membres
Messages : 5
Inscrit : 8 Dec 2010
Membre no 162 126



Merci pour la réponse.
Un code sans explication c'est du Chinois pour le béotien que je suis en la matière.
Je suis tout disposé à essayer de comprendre mais si ce n'est pas à portée d'un débutant, dites-le moi et j'en resterai là.

Ce message a été modifié par mjd - 1 Nov 2017, 14:52.


--------------------
AOO 4.1.4 / MacOS X 10.13.1 High Sierra / RAM 8Go / TimeMachine
Go to the top of the page
 
+Quote Post
teddy7545
posté 1 Nov 2017, 17:21
Message #4


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 879
Inscrit : 4 Apr 2004
Lieu : Lorraine - 54
Membre no 17 184



As tu OpenOffice installé ou LibreOffice ?

Le principe consiste à utiliser un logiciel qui dispose de la capacité à exécuter des fonctions depuis des lignes de commande (donc avec le terminal) pour faire le traitement que tu souhaites.

Dans l'exemple proposé par audionuma, il faut avoir déjà installé LibreOffice (et pas OpenOffice) ...et depuis le terminal demander la conversion grâce à la commande soffice et l'option --convert-to.
Citation
/Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf --outdir /chemin/destination /chemin/source/*.odt

Dans la commande :
/Applications/LibreOffice.app/Contents/MacOS/soffice représente de chemin de la fonction qui doit être exécuté.
--headless est une option pour travailler de façon invisible sans ouvrir l'interface de l'application.
--convert-to est une option qui demande la conversion vers le format (donc suivi par pdf qui donne vers quel format convertir)
--outdir est une option pour dire ou seront placé les résultats convertis et /chemin/destination doit être substitué avec un chemin valide du genre ~/Documents/converted_pdf
/chemin/source/*.odt est la description d'ou sont les fichiers à convertir /chemin/source/ doit bien sur être substitué par le bon chemin et *.odt signifie de considérer/convertir tous les fichiers qui portent le suffixe .odt

De mon côté j'ai essayé avec OpenOffice qui contient également soffice ... mais ça ne fonctionne pas .. ma version ne semble pas disposer de l'option --convert-to et le menu help me montre que la syntaxe des options est un peu différente.
Avec -conversionmode je ne suis pas parvenu à faire la conversion.
Si dessous le "help" de la commande soffice de OpenOffice.
CODE
MacBook-Pro-de-teddy:MacOS teddy$ /Applications/OpenOffice.app/Contents/MacOS/soffice -help
OpenOffice 4.1.3 413m1(Build:9783)

Usage: soffice [options] [documents...]

Options:

-minimized keep startup bitmap minimized.
-invisible no startup screen, no default document and no UI.
-norestore suppress restart/restore after fatal errors.
-quickstart starts the quickstart service (only available on windows and OS/2 platform)
-nologo don't show startup screen.
-nolockcheck don't check for remote instances using the installation
-nodefault don't start with an empty document
-headless like invisible but no userinteraction at all.
-conversionmode enable further optimization for document conversion, includes enabled headless mode.
-help/-h/-? show this message and exit.
-writer create new text document.
-calc create new spreadsheet document.
-draw create new drawing.
-impress create new presentation.
-base create new database.
-math create new formula.
-global create new global document.
-web create new HTML document.
-o open documents regardless whether they are templates or not.
-n always open documents as new files (use as template).

-display <display>
Specify X-Display to use in Unix/X11 versions.
-p <documents...>
print the specified documents on the default printer.
-pt <printer> <documents...>
print the specified documents on the specified printer.
-view <documents...>
open the specified documents in viewer-(readonly-)mode.
-show <presentation>
open the specified presentation and start it immediately
-accept=<accept-string>
Specify an UNO connect-string to create an UNO acceptor through which
other programs can connect to access the API
-unaccept=<accept-string>
Close an acceptor that was created with -accept=<accept-string>
Use -unnaccept=all to close all open acceptors
Remaining arguments will be treated as filenames or URLs of documents to open.

Je vais faire un test avec LibreOffice.


--------------------
MP Intel Dual Xéon 3 GHz - MacOSX 10.10.3 - ATI Radeon HD 5770 - ATTO UL5D - Apple Cinema HD Display 23 pouces
MBP 15' 2017 - MBP 13' mid 2009 - iMac 24' 8,1 2,8GHz - MP G4 MDD Bi 1,25 GHz - MP G4 Quicksylver 933MHz
Go to the top of the page
 
+Quote Post
teddy7545
posté 1 Nov 2017, 17:44
Message #5


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 879
Inscrit : 4 Apr 2004
Lieu : Lorraine - 54
Membre no 17 184



Voila le help de LibreOffice qui cette fois contient bien les options attendues smile.gif
Je poursuis le test
CODE
MacBook-Pro-de-herve:MacOS herve$ ./soffice --help
LibreOffice 5.3.6.1

Usage: soffice [options] [documents...]

Options:
--minimized keep startup bitmap minimized.
--invisible no startup screen, no default document and no UI.
--norestore suppress restart/restore after fatal errors.
--quickstart starts the quickstart service
--safe-mode starts the safe mode
--nologo don't show startup screen.
--nolockcheck don't check for remote instances using the installation
--nodefault don't start with an empty document
--headless like invisible but no user interaction at all.
--help/-h/-? show this message and exit.
--version display the version information.
--writer create new text document.
--calc create new spreadsheet document.
--draw create new drawing.
--impress create new presentation.
--base create new database.
--math create new formula.
--global create new global document.
--web create new HTML document.
-o open documents regardless whether they are templates or not.
-n always open documents as new files (use as template).

--display <display>
Specify X-Display to use in Unix/X11 versions.
-p <documents...>
print the specified documents on the default printer.
--pt <printer> <documents...>
print the specified documents on the specified printer.
--view <documents...>
open the specified documents in viewer-(readonly-)mode.
--show <presentation>
open the specified presentation and start it immediately
--language=<language_tag>
Override the UI language with the given locale
Eg. --language=fr
--accept=<accept-string>
Specify an UNO connect-string to create an UNO acceptor through which
other programs can connect to access the API
--unaccept=<accept-string>
Close an acceptor that was created with --accept=<accept-string>
Use --unnaccept=all to close all open acceptors
--infilter=<filter>[:filter_options]
Force an input filter type if possible
Eg. --infilter="Calc Office Open XML"
--infilter="Text (encoded):UTF8,LF,,,"
--convert-to output_file_extension[:output_filter_name[:output_filter_options]] [--outdir output_dir] files
Batch convert files (implies --headless).
If --outdir is not specified then current working dir is used as output_dir.
Eg. --convert-to pdf *.doc
--convert-to pdf:writer_pdf_Export --outdir /home/user *.doc
--convert-to "html:XHTML Writer File:UTF8" *.doc
--convert-to "txt:Text (encoded):UTF8" *.doc
--print-to-file [-printer-name printer_name] [--outdir output_dir] files
Batch print files to file.
If --outdir is not specified then current working dir is used as output_dir.
Eg. --print-to-file *.doc
--print-to-file --printer-name nasty_lowres_printer --outdir /home/user *.doc
--cat files
Dump text content of the files to console
Eg. --cat *.odt
--pidfile=file
Store soffice.bin pid to file.
-env:<VAR>[=<VALUE>]
Set a bootstrap variable.
Eg. -env:UserInstallation=file:///tmp/test to set a non-default user profile path.

Remaining arguments will be treated as filenames or URLs of documents to open.

Le test fonctionne cette fois ... et tous les fichiers sont correctement convertis.
Après chaque fichier converti, une ligne dans le terminal renseigne sur la conversion réalisée.
Ci-dessous le résultat de la commande pour douze fichiers de test.
Avant de lancer la commande j'ai créé un répertoire EssaisODT dans Téléchargement dans lequel j'ai placé mes 12 fichiers source puis j'ai créé un répertoire pdf dans EssaisODT dans lequel je récurerais les fichiers pdf après l'exécution de la commande.
CODE
MacBook-Pro-de-teddy:EssaisODT teddy$ /Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf --outdir /Users/teddy/Downloads/EssaisODT/pdf /Users/teddy/Downloads/EssaisODT/*.odt
convert /Users/teddy/Downloads/EssaisODT/MethoTest.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest10.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest10.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest11.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest11.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest12.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest12.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest2.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest2.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest3.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest3.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest4.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest4.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest5.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest5.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest6.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest6.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest7.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest7.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest8.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest8.pdf using filter : writer_pdf_Export
convert /Users/teddy/Downloads/EssaisODT/MethoTest9.odt -> /Users/teddy/Downloads/EssaisODT/pdf/MethoTest9.pdf using filter : writer_pdf_Export
Pour la conversion de ces 12 fichiers il a fallu environ 1mn mais cela dépend certainement de la complexité du document.

Ce message a été modifié par teddy7545 - 1 Nov 2017, 18:30.


--------------------
MP Intel Dual Xéon 3 GHz - MacOSX 10.10.3 - ATI Radeon HD 5770 - ATTO UL5D - Apple Cinema HD Display 23 pouces
MBP 15' 2017 - MBP 13' mid 2009 - iMac 24' 8,1 2,8GHz - MP G4 MDD Bi 1,25 GHz - MP G4 Quicksylver 933MHz
Go to the top of the page
 
+Quote Post
mjd
posté 1 Nov 2017, 18:25
Message #6


Nouveau Membre


Groupe : Membres
Messages : 5
Inscrit : 8 Dec 2010
Membre no 162 126



Bonjour teddy7545,

Merci pour cette proposition.
Les deux suites sont installées sur ma machine, et bien que c'est OpenOffice que j'utilise, je vais me pencher sur le script que tu as mis en ligne.
Code
MacBook-Pro-de-herve:MacOS herve$ ./soffice --help

Je comprends qu'il faut modifier la première ligne avec les éléments de ma config.
OK pour la première partie.
Code
MacBook-Pro-de-DUT

Ensuite, après les ":", MacOS herve$, c'est le nom d'utilisateur ?
Si je mets mon nom d'utilisateur MacOS MJD$, j'obtiens un avertissement
Citation
Erreur de syntaxe
"";"" ne peut pas se trouver après "identificateur"

Pour la version de LibreOffice, pas de problème, et la suite, ne semble pas requérir d'autre aménagement.

Ce message a été modifié par mjd - 1 Nov 2017, 18:26.


--------------------
AOO 4.1.4 / MacOS X 10.13.1 High Sierra / RAM 8Go / TimeMachine
Go to the top of the page
 
+Quote Post
teddy7545
posté 1 Nov 2017, 18:37
Message #7


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 879
Inscrit : 4 Apr 2004
Lieu : Lorraine - 54
Membre no 17 184



Regarde dans l'exemple que j'ai complété au dessus :
Il te faut tout d'abord créé les répertoires de travail ...dans mon cas EssaisODT et pdf mais tu peux les nommer comme tu veux si tu adaptes les commande ensuite
Dans mon exemple MacBook-Pro-de-teddy:EssaisODT teddy$ est juste mon prompt (ce que le terminal met automatiquement) et il ne faut pas le taper ni en ajouter ... EssaisODT indique que c'est mon répertoire courant (celui dans lequel je me trouve) mais ça n'a pas grande importance ici puisque les chemins de la commande sont absolus (complets).

Tu dois taper directement la commande :
Code
/Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf --outdir /Users/teddy/Downloads/EssaisODT/pdf /Users/teddy/Downloads/EssaisODT/*.odt
en remplaçant juste Teddy par le nom de ton compte.

Ce message a été modifié par teddy7545 - 1 Nov 2017, 18:38.


--------------------
MP Intel Dual Xéon 3 GHz - MacOSX 10.10.3 - ATI Radeon HD 5770 - ATTO UL5D - Apple Cinema HD Display 23 pouces
MBP 15' 2017 - MBP 13' mid 2009 - iMac 24' 8,1 2,8GHz - MP G4 MDD Bi 1,25 GHz - MP G4 Quicksylver 933MHz
Go to the top of the page
 
+Quote Post
mjd
posté 1 Nov 2017, 19:32
Message #8


Nouveau Membre


Groupe : Membres
Messages : 5
Inscrit : 8 Dec 2010
Membre no 162 126



J'ai compris et ça fonctionne.
Merci pour votre patience.

Je vais essayer de trouver comment on déclare que c'est résolu.

Bonne soirée.


--------------------
AOO 4.1.4 / MacOS X 10.13.1 High Sierra / RAM 8Go / TimeMachine
Go to the top of the page
 
+Quote Post
baron
posté 1 Nov 2017, 20:26
Message #9


Macbidouilleur d'Or !
*****

Groupe : Modérateurs
Messages : 19 312
Inscrit : 22 Jul 2004
Lieu : Louvain-la-Neuve (Gaule Gelbique)
Membre no 21 291



Pour modifier le titre d'un sujet qu'on a lancé (p.ex. pour y indiquer [Résolu]), il faut cliquer sur le bouton Editer en dessous du premier message > Editer (ou modifier ?) le titre.

Tant que j'y suis, cette fois je vais le faire pour toi, puisque nous avons un petit script qui fait ça en deux clics… wink.gif

[Edit] Trois clics en fait… biggrin.gif


--------------------
MacBook Pro 14’’ 2021, M1 Pro, 16 Go/1 To – macOS  12.6 “Monterey”  MacBook Pro 15’’ mi-2010 Core i5 2,53 GHz, 8 Go/SSD Samsung 860EVO 1 To – Mac OSX 10.6.8  Power Macintosh G3 beige de bureau, rev.1 @ 233MHz, 288 Mo/4Go – MacOS 9.1 — + carte PCI IDE/ATA Tempo 66 Acard 6260 avec HD interne Maxtor 80 Go + graveur interne CDRW/DVD LG GCC-4520B + tablette A4 Wacom UD-0608-A + LaCie ElectronBlueIV 19" + HP ScanJet 6100C   B-Box 3 + HP LaserJet 4000 N  
La recherche dans MacBidouille vous paraît obscure ? J'ai rédigé une proposition de FAQ. Le moteur logiciel a un peu changé depuis mais ça peut aider quand même.
Les corsaires mettent en berne…
Go to the top of the page
 
+Quote Post
mjd
posté 2 Nov 2017, 09:59
Message #10


Nouveau Membre


Groupe : Membres
Messages : 5
Inscrit : 8 Dec 2010
Membre no 162 126



Merci.


--------------------
AOO 4.1.4 / MacOS X 10.13.1 High Sierra / RAM 8Go / TimeMachine
Go to the top of the page
 
+Quote Post
baron
posté 2 Nov 2017, 19:13
Message #11


Macbidouilleur d'Or !
*****

Groupe : Modérateurs
Messages : 19 312
Inscrit : 22 Jul 2004
Lieu : Louvain-la-Neuve (Gaule Gelbique)
Membre no 21 291



jap.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 28th March 2024 - 18:14