Introduction
Le concept de «traitement de texte» est né en 1964 en Allemagne par l'entremise d'IBM et était destiné à l'origine à la rédaction de brochures. Il s'appelait à cette époque un «Textverarbeitung», et a été renommé «Word Processing» en anglais et «Traitement de texte» en français. Le traitement de texte a beaucoup évolué au fil des années et offre généralement deux formes d'éditions soit le WYSIWYG (soit édition de texte avec un aspect final correspondant à ce qui sortira sur papier) ou brute (lequel contient des balises exposant le formatage de chacun des éléments du texte). Le traitement propose généralement l'inclusion de caractères gras, italique, souligné, surligné, ombré ou barré et il offre la possibilité d'inclure des tableaux, des dessins, des graphiques, des schémas,...
Voici une liste des différentes manières de conception utilisées dans des traitements de texte :
- Modèle orienté objets (Object Model) : Le document est composé d'objets distincts (paragraphes, images, tableaux, zones de texte) avec leurs propriétés (police de caractères, taille, couleur). Cette approche permet un rendu WYSIWYG (What You See Is What You Get) très précis.
- Représentation hiérarchique en arbre (DOM-like) : Le contenu est structuré sous forme d'arbre, similaire au DOM HTML ou XML, ce qui facilite la manipulation sémantique, le style par blocs et la gestion des sections.
- Flux de texte avec gestion dynamique des pages : Le texte est organisé en flux continu qui s'adapte automatiquement à la pagination, aux sauts de page et aux colonnes. Le moteur ajuste la mise en page en temps réel selon les modifications.
- Gestion avancée des styles : Les traitements de texte modernes utilisent des styles hiérarchisés (styles de paragraphe, caractères, listes) permettant une mise en forme cohérente, modifiable globalement.
- Modèle de rendu vectoriel : Pour un affichage précis à l'écran et à l'impression, le texte, les images et les objets sont rendus à l'aide de primitives vectorielles, offrant une qualité optimale quelle que soit la résolution.
- Système d'édition basé sur des buffers multiples : Pour gérer les différentes couches (texte, annotations, commentaires), le logiciel utilise plusieurs tampons ou couches superposées, permettant un travail collaboratif et des fonctionnalités avancées.
- Support des formats complexes et objets incorporés : Les traitements modernes intègrent des objets OLE, des images, des équations, des tableaux complexes, avec un modèle de données permettant leur insertion, modification et liaison dynamique.
- Moteur d'indexation et de recherche : Intégré pour permettre des recherches rapides, la navigation dans le document, et la gestion des références croisées, tables des matières, index,...
- Architecture modulaire et extensible : Pour permettre l'intégration de plugins, macros, et automatisations, ces logiciels sont conçus avec des interfaces modulaires.
- Gestion des documents structurés (XML, OOXML) : Pour faciliter l'échange, la compatibilité et la manipulation avancée, les formats modernes (comme DOCX) reposent sur des documents XML structurés.