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

Dotnet Discussion :

Aller retour xml/docx


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Débutant en XSLT
    Inscrit en
    Avril 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Débutant en XSLT

    Informations forums :
    Inscription : Avril 2011
    Messages : 54
    Par défaut Aller retour xml/docx
    Bonjour tout le monde,
    Après avoir posé ma question dans le forum word, j'ai eu comme conseil de venir vous voir ici !

    Mon cas :
    1. J'ai un XML de données que je transforme en docx avec des XSLT. (En pratique, je génère le fichier "structure.xml" du docx.
    2. L'utilisateur édite ce fichier word (correction de fautes d'orthographe principalement).
    3. Je régénère mon fichier XML de données à partir du docx. (XSLT inverse)



    J'arrive très bien à créer un docx à partir de mon XML, mais je coince dans l'opération inverse... En effet, je n'arrive pas à "identifier" mes éléments (paragraphes, runs etc...) pour pouvoir reconstruire mon XML de données.

    Idéalement, il faudrait que je puisse glisser des ID dans les paragraphes et les runs.

    Avez-vous des pistes à m'apporter ?

    Je ne connais que très peu .NET, je n'ai évidemment pas le recul sur la possibilité de faire ce que je souhaite avec... serait-ce plus pratique ?


    Merci beaucoup et bonne journée.

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Par défaut
    Je suppose que tu as de très bonnes raisons d'avoir attaqué directement (courageusement ou de manière suicidaire , j'hésite) la génération du docx à partir d'un XML.
    Sinon, il existe une librairie qui te permets de manipuler de manière un peu plus abstraite ce docx à partir du code .NET. Il s'agit de l'open XML SDK

    Peut-être que ça peut te servir, et que ça t'amènera éventuellement à changer d'approche.

    A+
    Christophe

  3. #3
    Membre averti
    Homme Profil pro
    Débutant en XSLT
    Inscrit en
    Avril 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Débutant en XSLT

    Informations forums :
    Inscription : Avril 2011
    Messages : 54
    Par défaut
    Bonjour Chrisdot,

    Merci pour ta réponse.
    Effectivement, j'ai des raisons . Mais peut-être qu'elles ne sont pas les bonnes.

    Dans un premier temps, ne connaissant pas le .NET je me sens plus à l'aise à générer le xml moi-même avec xslt.
    Ensuite, je ne sais pas si le SDK me permettra de faire ce que je souhaite (je n'en trouve pas d'exemple). C'est un peu ce que j'espère savoir en venant taper à la porte de ce formum.

    Est-il possible de créer un paragraphe avec l'identifiant="1234". Entre temps le contenu de ce paragraphe est modifié via word. Puis finalement, je récupère ce paragraphe en retrouvant mon identifiant="1234" ?
    (A savoir qu'il y aura beaucoup de paragraphes à identifier et cela se fera en fonction de mon xml d'entrée.


    Bonne journée.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Août 2004
    Messages : 60
    Par défaut hors sujet ?
    Ta question n'est pas vraiment relative à .NET, c'est plus du XPATH / schéma XML de Word (est-ce le bon forum du coup ?).

    En XPATH/XSL-T, il doit être relativement facile de localiser une balise d'après son identifiant (ou n'importe quelle combinaison d'attributs).

    Maintenant, est-ce que le schéma XML de Word te permet d'insérer un tel marqueur durant la première conversion pour le retrouver durant la deuxième, là j'avoue que j'en sais rien.

  5. #5
    Membre averti
    Homme Profil pro
    Débutant en XSLT
    Inscrit en
    Avril 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Débutant en XSLT

    Informations forums :
    Inscription : Avril 2011
    Messages : 54
    Par défaut
    Bonsoir frecil,

    Effectivement, je suis un peu entre deux forums. D'un côté les XSLT ne connaissent pas forcément Word et son comportement.
    Et de l'autre les Word ne manipulent pas les fichiers avec XSLT.


    Ma question est posée dans l'espoir que, un utilisateur de .NET qui manipule du word, ai déjà essayé de créer un doc word à partir d'un XML et a eu besoin de faire le retour inverse en identifiant ses paragraphes...

    Si qqun à les outils/méthodes en language .NET, j'imagine que je pourrais creuser et qu'ensuite je serais capable de le faire en XSLT (en définitive, tout est une histoire de XML pour le docx)... mais l'ennui c'est que je ne connais pas la combine


    Merci pour ta réponse,

    Bonne soirée.

  6. #6
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par défaut
    Regarde du coté des Custom XML parts. En fonction de la complexité de ton contenu cela peut être une solution. Cela a en plus l'avantage d'utiliser un fichier XML bien à toi et pas le document.xml de Word qu'il est plus difficile de manipuler.

    Voci un article qui utilise cette notion pour extraire des portions définies de texte au sein d'un fichier docx:
    http://badger.developpez.com/tutorie...kflow-openxml/

    Tu as d'autres articles sur le sujet sur Web (je te laisse faire la recherche).
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

Discussions similaires

  1. Aller retour docx/xml
    Par PouetteMan dans le forum Word
    Réponses: 8
    Dernier message: 29/11/2011, 11h09
  2. WebControl Calendar sans aller retour serveur ?
    Par dymezac dans le forum ASP.NET
    Réponses: 6
    Dernier message: 14/05/2007, 13h04
  3. [AJAX] Retour xml
    Par Pollux dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 31/05/2006, 16h10
  4. Réponses: 13
    Dernier message: 30/11/2004, 06h16

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