Comment décoder du Base64 en fichier PowerPoint
- Collez le Base64 dans Base64 ou data URI. Un préfixe
data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,ne pose pas de problème, et Ouvrir un fichier .txt gère les longues chaînes enregistrées en texte. - Texte des diapositives liste chaque diapositive sous son numéro (Diapositive 1, Diapositive 2, etc.), avec le texte de chaque paragraphe sur sa propre ligne. Une diapositive sans texte affiche
…. - La liste des entrées en dessous montre toutes les parties du fichier avec Voir et Enregistrer.
- Appuyez sur Télécharger le fichier pour enregistrer le .pptx.
Le texte est extrait du XML des diapositives avec l’analyseur XML du navigateur. Rien dans la présentation n’est exécuté, et la page n’envoie aucune requête réseau en dehors du comptage des pages vues de Cloudflare.
Ce que contient le texte des diapositives
Chaque diapositive est un fichier XML distinct à l’intérieur du .pptx, et l’aperçu reprend le texte de chacun de ses paragraphes : titres, espaces réservés de corps, zones de texte, formes, formes groupées et cellules de tableaux. Les diapositives masquées sont incluses. Jusqu’à 200 diapositives sont lues.
Ce qui est stocké ailleurs n’apparaît pas :
| Contenu | Emplacement | Comment y accéder |
|---|---|---|
| Notes du présentateur | ppt/notesSlides/notesSlideN.xml | Voir affiche le XML |
| Texte SmartArt | ppt/diagrams/dataN.xml | Voir affiche le XML |
| Graphiques | ppt/charts/chartN.xml, avec les chiffres dans un classeur intégré | Enregistrer le .xlsx intégré depuis ppt/embeddings/ |
| Images et vidéos | ppt/media/ | Voir les prévisualise, Enregistrer les télécharge |
| Commentaires | ppt/comments/ | Voir affiche le XML |
Les diapositives sont listées d’après le numéro de leur nom de fichier, slide1.xml, slide2.xml, etc. C’est normalement l’ordre de la présentation, mais une présentation réorganisée par un script peut garder d’anciens numéros de fichiers : considérez donc la numérotation comme indicative.
Vérifier qu’il s’agit bien d’un PPTX
Tout fichier Office Open XML est une archive ZIP : une présentation PowerPoint commence donc par UEsDB en Base64, exactement comme un document Word ou un classeur Excel. L’outil cherche des dossiers ppt/ parmi les entrées pour les distinguer. Quand le contenu est dans un autre format, une note le signale et propose la bonne extension :
| Détecté | Note |
|---|---|
| DOCX ou XLSX | « Cela ressemble à DOCX, pas à un fichier PPTX. » avec Télécharger en .docx |
PDF (JVBERi0) | Une présentation exportée en PDF, avec Télécharger en .pdf |
DOC/XLS/MSG (OLE), 0M8R4KGxGuE | Un ancien .ppt de PowerPoint 97–2003, ou un .pptx protégé par mot de passe. L’outil ne peut pas les distinguer : saisissez ppt dans Extension pour le premier et gardez pptx pour le second |
Une présentation avec macros (.pptm) contient ppt/vbaProject.bin. Son texte s’affiche normalement, mais PowerPoint ne l’ouvre qu’avec l’extension .pptm : saisissez-la donc avant de télécharger.
Lire le texte des diapositives en Python
La bibliothèque standard suffit pour lister le texte de chaque diapositive, dans l’ordre utilisé par l’aperçu :
import base64, io, re, zipfile
import xml.etree.ElementTree as ET
A = "{http://schemas.openxmlformats.org/drawingml/2006/main}"
with open("deck.b64") as f:
pptx = base64.b64decode(f.read())
with zipfile.ZipFile(io.BytesIO(pptx)) as z:
slides = [n for n in z.namelist() if re.fullmatch(r"ppt/slides/slide\d+\.xml", n)]
slides.sort(key=lambda n: int(re.search(r"\d+", n).group()))
for name in slides:
root = ET.fromstring(z.read(name))
lines = ["".join(t.text or "" for t in p.iter(A + "t")) for p in root.iter(A + "p")]
print(name, [s for s in lines if s.strip()])
Pour la présentation d’exemple de cette page, le script affiche ppt/slides/slide1.xml ['Hello from Base64', 'A two-slide deck built in your browser.'], puis la même chose pour la diapositive 2. L’ordre réel des diapositives se trouve dans ppt/presentation.xml, dans l’élément <p:sldIdLst>, si vous en avez besoin exactement. Plus de détails sur Base64 en Python ; le côté archive est traité sur Base64 en ZIP.
FAQ
Comment transformer du Base64 en fichier PowerPoint ?
Collez la chaîne ci-dessus et appuyez sur Télécharger le fichier. La présentation est enregistrée sous le nom decoded.pptx ; modifiez d’abord le Nom du fichier si vous voulez un autre nom.
Les notes du présentateur sont-elles affichées ?
Pas dans le texte des diapositives. Les notes sont stockées dans ppt/notesSlides/notesSlide1.xml, etc. ; appuyez sur Voir à côté de l’une d’elles dans la liste des entrées pour lire son XML, où le texte se trouve dans des éléments <a:t>.
Puis-je voir les diapositives sous forme d'images ?
Non. La page lit uniquement le texte des diapositives et ne les dessine pas. Les images utilisées dans la présentation peuvent être affichées et enregistrées une par une depuis ppt/media/ dans la liste des entrées.