PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Convertir MSOffice vers PDF ou utiliser DocVersPDF
Convertir MSOffice vers PDF ou utiliser DocVersPDF
Débuté par benicourt, 03 aoû. 2017 18:56 - 5 réponses
Membre enregistré
48 messages
Posté le 03 août 2017 - 18:56
Bonjour,
J'ai besoin de convertir des documents word et excel au format PDF. J'ai vu que la commande DocVersPDF était dispo sous Webdev alors j'ai tenté de l'utiliser.
Mais résultat, j'obtiens un fichier PDF avec comme contenu... la chaine correspondant au nom du fichier à convertir et pas le fichier converti !
Pourtant, dans la doc, il suffit de faire:

// Export en PDF d'une variable de type Document
d est un Document = "texte.docx"
SI DocVersPDF(d, fRepExe() + [fSep] + "MonDoc.pdf") ALORS
Info("Document converti en PDF")
FIN


En gros, j'obtiens "texte.docx" !
Une idée... ou un autre moyen de faire ?

--
Mes blogs: www.benicourt.com
Membre enregistré
48 messages
Posté le 03 août 2017 - 19:07
Pour DocVersPDF, j'ai progressé: cela ne fonctionne qu'avec les DOCX ou RTF.... mais les images passent pas ! Donc inutile.
Un conseil pour réaliser l'opération autrement ?

--
Mes blogs: www.benicourt.com
Membre enregistré
190 messages
Popularité : +21 (23 votes)
Posté le 03 août 2017 - 19:36
Bonjour

Nativement windev ne gère pas comme il faut les docx. Quand on voit le champ traitement de texte actuellement. Mais bon il s'améliore.

Plusieurs pistes pour convertir :

- Piloter word pour enregistrer sous pdf

- Utiliser une imprimante pdf (PDFCreator), celui ci est pilotable par api je pense

- Utiliser un site de conversion, télécharger le fichier converti (https://online2pdf.com/en/convert-docx-to-pdf)
C'est free, peut être utilisable par api
Inconvénient : Vous exposez vos fichiers à un site web, on sait pas ce qu'ils peuvent en faire.
Peut être ce site aussi : https://www.conv2pdf.com/

- Une application de conversion utilisable par ligne de commande peut être
http://www.01net.com/telecharger/windows/Utilitaire/manipulation_de_fichier/fiches/102133.html
Membre enregistré
48 messages
Posté le 04 août 2017 - 09:59
Merci pour toutes ces pistes, je me tourne en effet de + en + vers l'utilisation d'un outil en ligne de commande que je lance avec LanceAppli. Le soucis, c'est la mémoire... problème que j'explique ici: https://forum.pcsoft.fr/fr-FR/pcsoft.fr.webdev/62628-lanceappli-memoire-insuffisante/read.awp

--
Mes blogs: www.benicourt.com
Membre enregistré
190 messages
Popularité : +21 (23 votes)
Posté le 04 août 2017 - 10:22
Je connais pas le contexte de votre projet mais je peux proposer une alternative pour avancer.

Éventuellement réaliser un automate qui convertit vos docx en pdf.
1 - Vos fichiers docx sont déposés dans un dossier

2 - Votre automate sur le serveur (windev) parcours à x minutes/secondes le dossier et appelle l'application de conversion, uniquement sur les fichiers nouvellement déposés

3 - Effacer / déplacer les docx, ou mettre à jour une DB



Bonne journée
Membre enregistré
48 messages
Posté le 04 août 2017 - 12:26
Héhé, c'est rigolo, on en est arrivé à la même solution ou presque:
Un batch:
for %%f in (*.PPTX, *.XLS, *.DOC, *.DOCX, *.RTF, *.ODT) do (

            echo %%~nf
            OfficeToPDF.exe %%f
del %%f
           
    )

Et le planificateur de tâches de windows ;)

--
Mes blogs: www.benicourt.com