Base de connaissances KB0144 

Le texte de certains libellés est pivoté de 180 degrés

Problème

Ce problème peut se produire si des fichiers .ppt convertis à partir d’anciennes versions de Microsoft Office (Office 2003 et versions antérieures) contiennent des attributs XML erronés. Ce bogue n'est pas limité aux graphiques think-cell. Il peut se produire dans toute forme PowerPoint à l'exception des zones de texte PowerPoint :

Pour savoir si votre fichier est concerné par ce problème, insérez un ovale dans la présentation corrompue :
AccueilDessinOvale → et saisissez du texte dedans.

Ce problème peut se produire lorsqu’un fichier .ppt est ouvert dans PowerPoint 2007 ou dans une version ultérieure. Une fois qu’un fichier .ppt a été ouvert et enregistré avec PowerPoint 2007 ou une version ultérieure, le problème apparaîtra également lorsque le fichier est ouvert avec des versions de PowerPoint antérieures à 2007.

Les fichiers concernés contiennent des attributs XML erronés rot="10800000" ou vert="eaVert", que PowerPoint 2007 et les versions ultérieures interprètent de manière incorrecte.

Microsoft reconnaît qu'il s'agit d'une faille du produit dans Microsoft PowerPoint 2007 et versions ultérieures. Si votre société possède un contrat auprès de l'Assistance Microsoft Office, vous pouvez contacter Microsoft pour demander un correctif en leur mentionnant le numéro de dossier SRQ100209600604.

Solution

Pour réparer les fichiers concernés, il est nécessaire de supprimer les attributs rot="10800000" et vert="eaVert".

Suppression manuelle de balises XML erronées

Réalisez une copie de sauvegarde avant de modifier le fichier.

  1. Renommez le fichier .pptx ou .potx et double-cliquez dessus. Cela permettra d'ouvrir le fichier zip comme dossier dans une fenêtre Windows Explorer. (Vous pouvez également ouvrir le fichier .pptx ou .potx avec votre outil de compression préféré).
  2. Allez dans les sous-dossiers « ppt\slides » et « ppt\thèmes » et copiez l’ensemble des fichiers .xml en dehors du dossier compressé, par exemple sur votre bureau Windows.
  3. Ouvrez chaque fichier .xml copié et supprimez les balises incorrectes à l'aide de la fonction remplacer d'un éditeur de texte.
  4. Copiez à nouveau les fichiers .xml modifiés dans les dossiers « ppt\slides » et « ppt\thèmes » respectifs du dossier compressé.
  5. Fermez le dossier compressé et renommez-le en .pptx ou .potx.
  6. Ouvrez le fichier .pptx ou .potx. réparé dans PowerPoint afin de le vérifier.

Suppression de balises XML erronées à l'aide de l'outil OpenDoc

Sur son blog, Costin Boldisor, Support Escalation Engineer chez Microsoft, propose un outil de réparation dénommé OpenDoc. Celui-ci n'est pas pris en charge officiellement par Microsoft. Après avoir effectué les opérations suivantes, tous les graphiques nouvellement insérés possèderont des libellés corrects :

Réalisez une copie de sauvegarde avant de modifier le fichier.

  1. Ouvrez le fichier .pptx ou .potx à l’aide de votre outil de compression préféré et accédez au sous-dossier « ppt\thèmes ». Vous y trouverez un ou plusieurs fichiers « theme1.xml », « theme2.xml », et ainsi de suite. Notez leur nom par écrit.
  2. Téléchargez l'outil OpenDoc et extrayez le fichier OpenDoc.exe sur le lecteur C:\.
  3. Créez un fichier « batch.b » contenant les commandes nécessaires à l’outil OpenDoc :
    1. Créez un fichier texte sur le lecteur C:\, puis renommez-le en « batch.b ».
    2. Insérez les lignes suivantes dans le fichier:
      -r "Slide.pptx" /ppt/theme/theme1.xml //n:objectDefaults/n:spDef/n:bodyPr[@rot='10800000'] rot
      -r "Slide.pptx" /ppt/theme/theme1.xml //n:objectDefaults/n:spDef/n:bodyPr[@vert='eaVert'] vert
    3. Remplacez « Slide.pptx » par le nom de votre fichier de présentation ou de modèle.
    4. Si vous trouvez des fichiers autres que « theme1.xml » à l’étape 1, répétez les étapes b) et c), puis remplacez « theme1.xml » par le nom de fichier approprié.
    5. Enregistrez le fichier.
  4. Ouvrez une invite de commande : Appuyez sur Démarrer ou sur la touche Windows → saisissez cmdEntrée
  5. saisissez C:\OpenDoc -b batch.bEntrée

Partager