IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Documents Java Discussion :

Créer des documents Word en Java


Sujet :

Documents Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 130
    Par défaut Créer des documents Word en Java
    Bonjour,

    Je cherche une API pour générer des documents Word en JAVA.
    Je dois pouvoir modifier la mise en forme et pouvoir intégrer des tableau et des images.
    ça serait bien qu'elle soit gratuite et avec une documentation (exemples).

    Merci pour vos réponses.

  2. #2
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    salut.
    même sujet ici

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 130
    Par défaut
    Malheureusement j'ai déjà vu...

    iText -> PDF (pas de .doc)
    Apache POI -> Aucune doc/tuto concernant la création de doc Word.

    J'ai trouvé Aspose Word mais malheureusement il est payant (et très cher !)


    D'autre solutions ?
    ou un lien avec des exemples / tutos pour Apache POI ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    le document doit être créé de toutes pièces ou bien c'est un template word que tu dois ouvrir, y injecter des donnée, et créer un document word final?

    Parce que, dans ce dernier point, la combinaison JODReport (utilisation de templates opendocument) + JODConverter (conversion de et vers opendocument de la plupart des formats bureautique), est assez efficace, tu pourrais avoir au final la chaine suivante

    template WORD -> JODConverter -> template opendocument -> JODReport -> resultat Opendocument -> JODConverter -> resultat word

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 130
    Par défaut
    Le problème de JODReport, c'est qu'il faut au préalable définir des templates, or mes rapport n'ont jamais le même nombre de page, certaines page sont en paysage avec des images...
    Sauf que comme je ne connait pas leur numéro de page à l'avance, comment tu fais pour faire les templates ?

    En faite j'ai déjà réaliser mon application avec iText (donc en PDF), sauf qu'on me demande que ça sorte aussi en Word.

    Comme je vois qu'il y a pas vraiment d'APIs Word, exist'il une API pour transformer un PDF en doc Word (en gardant la mise en page + image ...) ?

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    non, tous les processus que tu trouvera font l'inverse. Et pour cause, le format PDF n'est pas prévu pour de l'enchainement, des saut de pages dynamiques, de la pagination automatique etc. C'est un format ou on dit "ça, ca va exactement là, au pico poil de millimètre près", tandis que les document openoffice ou word, ce sont des format ou l'on dit "ça, ca s'enchaine derrière ça".

    adobe writer fournis une option qui permet de sauver un PDF en .doc. Le .doc que tu obtiens sera en réalité formé d'un ensemble de cadres disposés de manière absolue dans lesquel tu trouvera des bouts de texte. Inutilisable en pratique pour une modification.

  7. #7
    Membre éclairé Avatar de L4BiN
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2006
    Messages : 432
    Par défaut
    Bonjour,

    sinon tu decodes les balise word sur les fichier .doc (et pas docx ca a l'air crypté)... et ensuite tu crées un fichier que tu rempli avec BufferedWritter en mettant les balises.... bref tu fais toi meme le boulot... Si tes fichiers sont pas trop compliqué tu devrais pouvoir t'en sortir.

  8. #8
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Par défaut Besoin d'infos complémentaires
    Je reviens sur ce sujet. Je suis novice dans tout ça et je dois convertir .doc en .odt via jodconverter.
    En fait mon cheminement sera le même que celui évoqué template WORD -> JODConverter -> template opendocument -> JODReport -> resultat Opendocument -> JODConverter -> resultat word

    Il faut donc que j'installe un service OpenOffice pour pouvoir utiliser JODConverter, mais c'est super long! et l'installer chez tous les clients.... je trouve ça plutôt compliqué pour une simple conversion...

    Je me suis basée sur ce tutoriel pour le service OpenOffice:
    http://www.artofsolving.com/node/11

    Y'a pas plus simple ?

    Merci pour votre aide

  9. #9
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    t'emmerde pas avec un service. Ton application n'a qu'à lancer depuis ton application java "soffice -headless -accept=socket,port=8100;urp;"

    Par contre, oui, pour ce genre de chose openoffice est ce qu'il y a de plus fiable. Maintenant, la conversion, en général, on la fait depuis un serveur et pas sur des postes client

  10. #10
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Par défaut
    Merci bcp pour ton aide.

    Par contre, apparemment jodconverter ne convertit pas le .dot en .odt car j'ai un message d'erreur qui m'indique que le .dot n'est pas reconnu.
    C'est dommage

  11. #11
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    utilise la méthode convert() qui prend en paramètre des DocumentFormat et passe le DocumentFormat correspondant au .doc dot et doc c'est la même chose si ma mémoire est bonne

  12. #12
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Par défaut
    Merci pour ta réponse.

    J'ai déclaré le nouveau format odt, et utilisé le convert avec documentformat, mais il me dit toujours que le format n'est pas supporté...

    J'ai fait ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    static File inputFileDOT = new File("C:\\FichierDOT.dot");
    static File inputFileODT = new File("C:\\FichierODT.odt");
     
    final static DocumentFormat formatDot = new DocumentFormat("Document Modele Word", "dot", "dot");
    static DocumentFormat formatODT = registry.getFormatByFileExtension("odt");
    puis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    convert.convert(inputFileDOT, formatDot, inputFileODT, formatODT);

  13. #13
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ca ne passe pas avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    convert.convert(inputFileDOT, registry.getFormatByFileExtension("doc");, inputFileODT, formatODT);
    ?

  14. #14
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Par défaut
    Avec l'extension .doc je n'ai pas de souci.
    Mais le client fait des modèles je voulais donc une conversion de .dot en .odt

    Mais au pir je lui ferai faire ses modèles en .doc comme tu me l'as proposé

    Merci

Discussions similaires

  1. Créer des documents Word
    Par Franck.H dans le forum ASP.NET
    Réponses: 3
    Dernier message: 09/04/2015, 16h36
  2. API Java pour créer des documents Visio
    Par jeanfouille dans le forum Documents
    Réponses: 10
    Dernier message: 23/12/2010, 15h26
  3. API Java pour créer des documents Visio
    Par jeanfouille dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 23/11/2010, 14h55
  4. Créer des documents Word et Excel
    Par christophertux dans le forum C#
    Réponses: 2
    Dernier message: 28/07/2009, 17h44
  5. créer un document word en appelant des modules
    Par pierre 77930 dans le forum Word
    Réponses: 41
    Dernier message: 22/08/2008, 21h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo