Rich Text Format

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche

RTF
Rich Text Format
Caractéristiques
Extension
.rtfVoir et modifier les données sur Wikidata
Type MIME
text/rtf, application/rtfVoir et modifier les données sur Wikidata
Signature
7B 5C 72 74 66 31 (hexa)Voir et modifier les données sur Wikidata
Développé par
Version initiale
Norme
Spécification

Le Rich Text Format (RTF, littéralement en anglais, « format de texte enrichi ») est un format de fichier développé 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.

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[modifier | modifier le code]

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.

A la base, 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].

Les spécifications de RTF pour Microsoft Word[3],[4]

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[modifier | modifier le code]

RTF est programmé en utilisant des groupes, un backslash, un mot de contrôle et un délimiter. 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 :

1) Un espace

2)  Un chiffre

3)  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 bold} gras.\par
 }

Cela donnerait le texte suivant sur un éditeur RTF :

Voici du texte en gras.

Exemple de document[modifier | modifier le code]

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;<nowiki>}}</nowiki>
 {\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[modifier | modifier le code]

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[modifier | modifier le code]

  1. « Les formats texte », sur www2.ulb.ac.be (consulté le 18 février 2020)
  2. Niveditha Narva (Beyondsoft Consulting Inc), « Modifications apportées dans Word 2010 », sur docs.microsoft.com (consulté le 18 février 2020)
  3. (en-US) « Those who forget Santayana… », sur An Antic Disposition, (consulté le 18 février 2020)
  4. Microsoft Corporation, http://www.snake.net/software/RTF/Old/RTF-Spec-1.0.rtf
  5. (en) « Complex singularity versus openness | Joinup », sur joinup.ec.europa.eu (consulté le 5 août 2015).

Liens externes[modifier | modifier le code]