Aller au contenu
Ghostchars

Nettoyer un document

DOCX, ODT, HTML, Markdown ou texte brut. Le fichier est ouvert dans votre navigateur et n'est jamais envoyé : il n'y a aucun serveur pour le recevoir.

  • Tourne dans votre navigateur
  • DOCX · ODT · HTML · MD · TXT
  • Votre fichier d'origine n'est jamais modifié

Déposez un fichier ici

DOCX, ODT, HTML, Markdown ou texte brut, jusqu'à 25 Mo.

Ce qui est inspecté, format par format

Les nœuds de texte sont nettoyés dans tous les formats. Ce qui est signalé en plus dépend de ce que le format peut cacher.

FormatNettoieSignale
DOCXLe texte du document, des en-têtes, des pieds de page, des notes de bas de page, des notes de fin et des commentaires, y compris les caractères écrits sous forme d'entités numériques.Passages masqués, blanc sur blanc et texte minuscule, modifications suivies, commentaires, sessions rsid, métadonnées d'auteur, propriétés personnalisées, macros, médias.
ODTChaque nœud de texte de content.xml. Les attributs ne sont jamais touchés.Annotations, zones de modifications suivies, styles masqués, generator, créateurs, cycles d'édition, champs définis par l'utilisateur.
HTMLLes nœuds de texte uniquement. Balises, attributs, commentaires, script et style ressortent octet pour octet identiques.Commentaires, éléments en display:none / hidden / font-size:0, la balise meta generator, les caractères suspects dans les attributs alt/title/aria.
Markdown · TXTLe fichier entier. Les fins de ligne sont préservées, sauf si vous demandez à les replier.Rien à signaler au-delà des caractères eux-mêmes : le texte brut n'a aucune structure où se cacher.

Comment ça marche

  1. Choisissez un fichier

    Déposez un .docx, .odt, .html, .md ou .txt sur la page, ou choisissez-en un avec le bouton. Il est lu par le navigateur ; rien n'est envoyé nulle part.

  2. Lisez le rapport

    Chaque caractère invisible est listé avec sa position, son point de code et son nom Unicode, à côté de ce que le fichier cache autour du texte : passages invisibles, commentaires, modifications suivies, métadonnées d'auteur.

  3. Choisissez ce qu'il faut supprimer

    Les réglages par défaut suppriment les caractères qui sont de la contrebande partout dans un texte. Les treize interrupteurs avancés, plus les métadonnées et les rsids, se demandent explicitement, parce que chacun change quelque chose de visible.

  4. Téléchargez la copie nettoyée

    Un nouveau fichier est produit en mémoire et proposé au téléchargement. Votre original n'est jamais modifié.

Voir un rapport de document

Un .docx est ouvert dans le navigateur, sans aucun serveur où l'envoyer. Le rapport compte d'abord les caractères cachés du texte par point de code, puis passe à ce qui se cache autour du texte : suivi des modifications, commentaires et métadonnées d'édition arrivées avec le fichier. Tout cela est signalé, pas supprimé à votre place.

Regarder

Lire un rapport du document

30 secondes · Sous-titres inclus

Ce que cet outil ne fait pas

  • Le PDF. Le texte d'un PDF n'est pas réécrivable sur place sans risque : l'inspection et le retrait des métadonnées sont prévus, l'édition non.
  • Les images. Les métadonnées EXIF, XMP et C2PA sont un autre problème et un autre outil.
  • Il ne supprime jamais un passage masqué, une modification suivie ni un commentaire. Ils sont signalés pour que vous décidiez.
  • Les filigranes statistiques comme SynthID-Text vivent dans le choix des mots, pas dans les caractères. Rien ici ne les atteint.

La même chose, en ligne de commande

clean_file.py est l'implémentation de référence dont cette page est un portage. Il tourne hors ligne, prend les mêmes options, et dispose d'un mode --check pour les hooks pre-commit.

./clean_file.py --show essay.docx
./clean_file.py -i --metadata --rsids essay.docx
./clean_file.py -s --punct essay.docx

Questions sur les documents

Mon document est-il envoyé quelque part ?

Non. Ghostchars est un site statique sans backend. Le fichier est lu par votre navigateur avec l'API FileReader, traité dans l'onglet, et la copie nettoyée est créée en mémoire. Rien n'est transmis, et il n'existe aucun serveur qui pourrait le recevoir.

Quels formats sont pris en charge ?

DOCX, ODT, HTML, Markdown et texte brut. DOCX et ODT sont des paquets ZIP de fichiers XML, que le navigateur décompresse et recompresse ; le HTML est nettoyé dans ses seuls nœuds de texte ; le Markdown et le texte brut sont nettoyés d'un bloc.

Pourquoi pas le PDF ?

Un PDF stocke des positions de glyphes, pas des passages de texte modifiables : remplacer un caractère peut donc changer la mise en page ou casser le fichier. Analyser un PDF et retirer ses métadonnées est faisable et prévu ; réécrire son texte n'est pas quelque chose qu'un outil devrait faire discrètement.

Pourquoi les passages masqués et les commentaires sont-ils signalés et non supprimés ?

Parce que les supprimer change le document. Un passage masqué peut être un espace réservé de modèle, un commentaire peut être la raison d'être du document. Ghostchars vous dit qu'ils sont là et combien il y en a ; les supprimer est une décision éditoriale qui vous appartient.

Qu'est-ce qu'un rsid, et pourquoi le supprimer ?

Word marque chaque session d'édition d'un identifiant de sauvegarde aléatoire de 8 chiffres hexadécimaux et l'inscrit sur les passages tapés pendant cette session. Un document qui ne compte qu'un ou deux rsids distincts sur tout son corps a été collé d'un seul coup plutôt qu'écrit au fil du temps. Les supprimer supprime cette déduction.

Word ouvrira-t-il encore le fichier nettoyé ?

Oui. Chaque partie du paquet garde sa position et sa méthode de compression ; seul le texte des nœuds modifiés est réécrit, et xml:space="preserve" est ajouté là où le nettoyage aurait sinon laissé Word supprimer un espace en bordure. Avec --metadata, la partie des propriétés personnalisées est retirée, ce qui laisse une relation orpheline que Word tolère : le même compromis que fait l'outil en ligne de commande.

Et si un caractère invisible est écrit sous forme d'entité ?

Il est attrapé quand même. Chaque nœud de texte est décodé avant nettoyage puis ré-échappé ensuite, donc un espace de largeur nulle écrit ​ est supprimé exactement comme un espace littéral.

Statistiques anonymes ?

Ghostchars traite votre texte dans le navigateur et ne l'envoie jamais nulle part. Nous aimerions comptabiliser les pages vues avec un service de mesure auto-hébergé et sobre en cookies. Jamais le moindre contenu.