RTF to PDF - macro - ligne de commande

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
cash
Fraîchement OOthentifié
Messages : 1
Inscription : 19 avr. 2006 14:33

RTF to PDF - macro - ligne de commande

Message par cash »

Bonjour, n'ayant pas trouver de reponse suite à une petite recherche sur ce forum
je me permet de poser la question

pouvez vous me donner une macro qui permet de convertir un RTf en un PDF
à partir de l'invite de commande windows.

(Ou bien ya til un autre moyen de faire ceci en dehors des macro avec OOo.)

Je vous remercie par avaance :)
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25602
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Message par Dude »

Code : Tout sélectionner

Sub ExportPDF
' Export en PDF de tous les documents ODT d'un répertoire
' Avec les compliments du Dude (c) 2006
dim document as object
dim dispatcher as object
dim sInDir as string
dim sOutDir as string
dim sFile as string
dim sUrl as string
dim sPdf as string
dim docTemp as object   
dim args1(1) as new com.sun.star.beans.PropertyValue
dim mNoArgs() 
sInDir = InputBox("Répertoire source","A saisir","file:///c|/temp/")
sOutDir = InputBox("Répertoire destination","A saisir","file:///C|/temp/")
sFile = Dir(sInDir + "*.odt") 

dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
oDesktop = createUnoService("com.sun.star.frame.Desktop")

While sFile <> ""  
   sUrl = sIndir+sFile
   docTemp = oDesktop.loadComponentFromURL(sURL,"_blank",0,mNoArgs())
   document = docTemp.CurrentController.Frame
   spdf = sOutDir+ left(sfile,len(sfile)-4) + ".pdf"
   args1(0).Name = "URL"
   args1(0).Value = sPdf
   args1(1).Name = "FilterName"
   args1(1).Value = "writer_pdf_Export"
   dispatcher.executeDispatch(document, ".uno:ExportDirectToPDF", "", 0, args1())
   docTemp.dispose()
   sFile = Dir
Wend
End Sub 
8)
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
Dante
Membre hOOnoraire
Membre hOOnoraire
Messages : 171
Inscription : 19 avr. 2006 09:00

Message par Dante »

Autre solution :
BatchConv disponible sur http://oooconv.free.fr/batchconv/batchconv_fr.html

Bien co.
OO.o 2.3.1 sous Windows XP Pro SP2