Rich Text Format
Le Rich Text Format (RTF, littéralement en anglais, « format de texte enrichi ») est un format de fichier conçu par la société Microsoft. Ce format descriptif non compressé est reconnu par la plupart des logiciels de traitement de texte comme OpenOffice.org Writer, LibreOffice Writer ou Word. Sa vocation initiale est d'être un format pivot entre logiciels et plates-formes hétérogènes.
Rich Text Format
Il est utilisé par défaut dans l'éditeur TextEdit de Mac OS X, dans WordPad de Windows, et dans le traitement de texte Ted, courant sous les systèmes de type Unix.
Il existe une variante du format RTF, le format RTFD, qui n'est pris en charge que par le système macOS, avec les applications TextEdit et Pages.
Les paragraphes sont séparés par des balises « \par
». « {\b
» marque le début d'un texte en gras qui se termine avec « }
». Cette syntaxe est similaire à celle de TeX.
Historique
Richard Brodie, Charles Simonyi et David Luebbert, membres de l’équipe de développement de Microsoft Word, ont développé la spécification originale du RTF dans le milieu des années 1980. Cette syntaxe a été influencée par le langage de typage TeX.
En 1987, le premier lecteur RTF, qui implémentait la spécification RTF 1.0, faisait partie intégrante de Microsoft Word 3.0 pour Macintosh. Toutes les versions suivantes de Microsoft Word pour Macintosh et Windows pouvaient lire et écrire dans le format RTF.
À l'origine, ce langage a été créé pour faciliter les échanges de fichiers. Le RTF étant compatible avec la plupart des logiciels de traitement de texte, il suffisait de sauvegarder le texte pour qu’il soit compatible avec un maximum d’éditeurs de traitement de textes. Il a été longtemps conseillé d’utiliser ce langage dans les pièces jointes[1].
Microsoft a continué de maintenir le format jusqu’à la dernière spécification de RTF, la version 1.9.1, qui date de 2008 et était inclus dans Microsoft Office 2007. Microsoft a par la suite arrêté de faire des améliorations sur ce format et les versions ultérieures à Word 2007 ne peuvent pas sauver proprement au format RTF[2].
Version de RTF | Date de publication | Microsoft Word version | Date de release de Microsoft Word |
---|---|---|---|
1.0 | 1987 | Microsoft Word 3 | 1987 |
1.1 | Microsoft Word 4 | 1989 | |
1.2 | 1993 | Microsoft Word 5 | 1991 |
1.3 | Microsoft Word 6 | 1993 | |
1.4 | Microsoft Word 95/ Word 7 | 1995 | |
1.5 | Microsoft Word 97/ Word 8 | 1997 | |
1.6 | Microsoft Word 2000/ Word 9 | 1999 | |
1.7 | Microsoft Word 2002/ Word 10 | 2001 | |
1.8 | Microsoft Word 2003/ Word 11 | 2003 | |
1.9.1 |
(RTF 1.9 – publié en ) |
Microsoft Word 2007 / Word 12 | 2006 |
Syntaxe
RTF est programmé en utilisant des groupes, un backslash, un mot de contrôle et un délimiteur. Les groupes sont entourés d'accolades ({}), avec l’ouverture et la fermeture d'accolades qui indiquent le début et la fin du groupe. Les groupes sont utilisés pour indiquer quel type d’attributs sont à appliquer à un certain texte.
Le backslash indique que le mot de contrôle est occupé d’être utilisé. Les mots de contrôle sont des commandes programmées spécifiquement pour RTF. Ces commandes ont différents états déterminant si elles sont actives. Ces états sont représentés par un certain nombre. Par exemple :
\b0​
indique que le texte en gras est désactivé.\b1​
indique que le texte en gras est activé.
Le délimiteur peut-être :
- Une espace
- Un chiffre
- Un caractère autre qu’un chiffre ou une lettre (par exemple : \, /, } )
Voici un exemple de code RTF :
{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard
Voici du texte en {\b gras}.\par
}
Cela donnerait le texte suivant sur un Ă©diteur RTF :
Voici du texte en gras.
Exemple de document
Un exemple de document RTF, qui montre l'utilisation de deux polices de caractères et des changements de taille de police (fs = font size) :
{\rtf1\ansi
{\fonttbl
{\f0\fnil\fcharset0\fprq0\fttruetype Helvetica;}
{\f1\fnil\fcharset0\fprq0\fttruetype Bitstream Charter;}
}
{\f1\fs24 Ceci est un texte accentu\'e9}
\par
{\f0\fs24 avec des caract\'e8res {\b gras},}
\par
{\f1 des {\fs18 petits} et des {\fs32 gros}.}
}
Lisibilité du format
RTF utilise un codage textuel, non compressé, des données qu'il représente et est donc théoriquement lisible par un œil humain. Documenté, il se prête bien à une génération automatisée. Malheureusement, les codes RTF produits par des traitements de texte comme Word tendent à être très volumineux, surtout si le fichier codé contient des objets inclus, comme des images.
Ce format propriétaire a été modifié par Microsoft au gré des évolutions majeures de la suite Office. La dernière version de sa spécification (RTF 1.9.1) a été publiée par Microsoft en .
Les nouveautés introduites par Word 10 ne sont plus traduites en RTF, ce qui confirme le remplacement par Microsoft du format RTF par Open XML comme format « stratégique » d'interopérabilité de ses logiciels, même si les fichiers générés par Office 2010 ne sont pas conformes à la norme Open XML approuvée par l'ISO/IEC[5].
Notes et références
- « Les formats texte », sur www2.ulb.ac.be (consulté le ).
- Niveditha Narva (Beyondsoft Consulting Inc), « Modifications apportées dans Word 2010 », sur docs.microsoft.com (consulté le ).
- (en-US) « Those who forget Santayana… », sur An Antic Disposition, (consulté le ).
- Microsoft Corporation, http://www.snake.net/software/RTF/Old/RTF-Spec-1.0.rtf
- (en) « Complex singularity versus openness | Joinup », sur joinup.ec.europa.eu (consulté le ).
Liens externes
- (en) Spécifications officielles de RTF sur le Web - dans plusieurs formats incluant HQX, manpage, RTF, PS. Avec des informations sur des convertisseurs RTF. Incluant les versions 1.3, 1.5 et 1.7.
- (en) Spécifications de RTF v1.9.1 (mars 2008 - Microsoft)
- (en) Spécifications de RTF v1.9 (janvier 2007 - Microsoft)
- (en) Spécifications de RTF v1.8 (avril 2004 - Microsoft)
- (en) Spécifications de RTF v1.6 (mai 1999 - Microsoft)
- (en) Spécifications de RTF v1.5 (avril 1997 - Microsoft)
- (en) Changes in Word 2010 (mai 2010 - Microsoft)