Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| fichiers:dvi:qu_est_qu_un_fichier_dvi [2018/05/25 19:35] – joseph.wright | 5_fichiers:dvi:qu_est_qu_un_fichier_dvi [2022/09/23 16:44] (Version actuelle) – Suppression d'espace inutile dbitouze | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | --- | + | ====== Qu'est-ce qu'un fichier DVI? ====== |
| - | category: concepts | + | |
| - | permalink: /FAQ-dvi | + | |
| - | date: 2014-06-10 | + | |
| - | --- | + | |
| - | # What is a DVI file? | ||
| - | '' | + | "DVI" est censé être l'acronyme de //DeVice-Independent//. |
| - | DeVice-Independent, | + | C'est historiquement le format de fichier de sortie de TeX. |
| - | processed for printing or viewing on most kinds of typographic output | + | Il porte ce nom car il est conçu pour pouvoir être converti |
| - | device or display. | + | en vue d' |
| + | de périphériques de sortie (écrans, imprimantes...). | ||
| + | Ce format de fichier n'a rien à voir avec le type de connexion | ||
| + | // | ||
| + | que vous utilisez pour brancher un écran sur votre ordinateur. | ||
| - | A DVI file (that is, a file with the type or extension | ||
| - | `dvi`) is the main output file of '' | ||
| - | TeX-like systems, such as [pdfTeX](/ | ||
| - | other formats). | ||
| - | A DVI file contains all the information that is needed for | + | ===== Où rencontre-t-on les fichiers |
| - | printing or previewing, except for the actual bitmaps or outlines of | + | |
| - | fonts, and any material to be introduced by means of | + | |
| - | [`\special` commands](/ | + | |
| - | DVI file (representing glyphs for printing or display) appear | + | |
| - | in an encoding determined in the document. | + | |
| - | Any TeX input file should produce the same DVI file | + | Lorsque vous compilez votre document avec les commandes '' |
| - | regardless of which implementation of TeX is used to produce it. | + | un fichier dont l' |
| + | et [[1_generalites: | ||
| + | et sont généralement utilisés pour produire directement des fichiers PDF.)). | ||
| + | Ce format | ||
| + | et implémenté par Donald E. Knuth quand il a écrit le moteur | ||
| + | Contrairement aux fichiers TeX ou LaTeX, qui sont dans un langage balisé fait pour être écrit et lu par des humains, | ||
| + | les fichiers DVI ne sont pas destinés à être directement compréhensibles ; ils sont constitués de données binaires décrivant | ||
| + | la présentation visuelle d'un document d'une manière qui ne dépend pas d'un format d' | ||
| + | d'une imprimante particuliers. | ||
| - | An DVI file may be processed by a [DVI driver](/ | + | Un fichier TeX doit donner la même sortie |
| - | to produce further output designed specifically for a particular | + | de TeX utilisée pour le compiler. |
| - | printer, or for output in another format (for distribution), | + | |
| - | be used by a previewer for display on a computer screen. | + | |
| - | Note that [XeTeX](/ | ||
| - | pdfTeX) uses an '' | ||
| - | its output to a close-coupled [DVI driver](/ | ||
| - | `xdvipdfmx`. | ||
| - | The canonical reference for the structure of a DVI file is the | + | Un fichier |
| - | source of Knuth's program `dvitype` (whose original purpose, | + | qui va s' |
| - | as its name implies, was to view the content of a DVI file). | + | Par exemple, la plupart des distributions TeX comprennent un programme permettant de prévisualiser les fichiers DVI |
| - | A partially complete | + | sur un écran d'ordinateur. D'autres pilotes vont convertir les fichiers DVI en PostScript ou en PDF |
| - | processed may offer further enlightenment. | + | (des langages de description de pages), ou dans des formats spéciaux pour tel ou tel modèle d' |
| + | |||
| + | |||
| + | Le DVI diffère du PostScript et du PDF en ce que, s'il contient bien toute les autres informations nécessaires | ||
| + | à l' | ||
| + | soit intégrer leurs polices à l' | ||
| + | Dans le fichier DVI, les caractères (représentant les glyphes pour l' | ||
| + | apparaissent selon un codage décrit dans le document. | ||
| + | Donc pour qu'un fichier DVI puisse être imprimé ou même correctement prévisualisé, | ||
| + | les polices auxquelles il fait référence doivent être déjà installées. | ||
| + | |||
| + | Autre élément manquant dans le fichier DVI: tout ce qui a été introduit | ||
| + | par [[5_fichiers: | ||
| + | (qui sont généralement une façon de contourner volontairement le pilote DVI, | ||
| + | pour s' | ||
| + | voir ci-après). | ||
| + | |||
| + | |||
| + | Comme le PDF, et à la différence du PS, le DVI utilise un langage qui n'est pas | ||
| + | un langage de programmation complet ([[wpfr> | ||
| + | Il est est limité et offre une [[wpfr> | ||
| + | |||
| + | |||
| + | Le balisage du document TeX initial peut être en partie retrouvé par ingénierie inverse à partir du fichiers DVI, | ||
| + | mais ce processus ne retrouvera pas les constructions de haut niveau, surtout si le balisage d' | ||
| + | des extensions complexes (ne serait-ce que LaTeX). | ||
| + | |||
| + | |||
| + | <note tip> | ||
| + | [[1_generalites: | ||
| + | utilise un " | ||
| + | et il faut utiliser le [[5_fichiers: | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Spécifications ===== | ||
| + | |||
| + | La référence ultime pour la structure d'un fichier DVI est le code-source | ||
| + | du programme [[ctanpkg> | ||
| + | était de visualiser le contenu d'un fichier DVI). Mais ce n'est pas très pratique | ||
| + | pour rendre ce format accessible à d' | ||
| + | le [[https:// | ||
| + | les [[ctanpkg> | ||
| + | Ces spécifications sont partiellement basées sur un [[https:// | ||
| + | |||
| + | |||
| + | Le format DVI a été conçu pour être compact et facilement lisible par une machine. | ||
| + | Dans ce but, un fichier DVI est une séquence de commandes qui forment une sorte de | ||
| + | « langage machine », selon les termes de Knuth. | ||
| + | Chaque commande commence par un opcode de huit bits, suivi de zéro octet ou plus de paramètres. | ||
| + | Par exemple, un opcode du groupe '' | ||
| + | insère un unique caractère et déplace le curseur de la largeur de ce caractère. | ||
| + | L' | ||
| + | prend au moins quatorze octets de paramètres, | ||
| + | 255 octets((Les spécifications du format ne le précisent pas, mais DVI est [[wpfr> | ||
| + | |||
| + | |||
| + | De façon plus générale, un fichier DVI se compose d'un préambule, d'une ou plusieurs pages et d'un postambule. | ||
| + | Six variables d' | ||
| + | (//h//, //v//, //w//, //x//, //y//, //z//): | ||
| + | * //h// et //v// sont les décalages horizontaux et verticaux actuels par rapport au coin supérieur gauche (quand //v// augmente le curseur se déplace vers le bas de la page), | ||
| + | * //w// et //x// contiennent les informations d' | ||
| + | * //y// et //z// contiennent les informations d' | ||
| + | |||
| + | Ces variables peuvent être ajoutée ou retirées de la pile (//pushed// et // | ||
| + | En outre, la police actuelle, notée //f//, est stockée sous forme d'un entier, | ||
| + | mais elle pas stockées dans la pile avec les autres variables d' | ||
| + | Les informations sur la taille de chaque caractère sont chargées depuis les fichiers TFM. | ||
| + | Les polices elles-mêmes ne sont pas incluses dans le fichier DVI, mais seulement référencées | ||
| + | par un entier défini par l' | ||
| + | pour chaque police chargée : une fois avant qu' | ||
| + | //f// contient une valeur entière d'une longueur maximale de quatre octets, bien qu'en pratique, | ||
| + | TeX ne donne que des numéros de polices compris entre 0 et 255. | ||
| + | |||
| + | De même, le format DVI prend en charge les codes de caractères d'une longueur maximale de quatre octets, | ||
| + | même si seule la plage 0-255 est couramment utilisée, le format TFM étant limité à cette plage. | ||
| + | Les codes de caractères du fichier DVI font référence au codage des caractères dans la police actuelle, | ||
| + | et non à celui du système. Cela signifie, par exemple, qu'un système EBCDIC peut traiter un fichier DVI généré | ||
| + | sur un système ASCII, à condition que les mêmes polices soient installées. | ||
| + | |||
| + | |||
| + | ===== L' | ||
| + | |||
| + | Le format DVI ne prend pas en charge les dessins, à l' | ||
| + | Par contre, le format DVI propose un mécanisme général d' | ||
| + | qui permet que le pilote DVI passe simplement les informations à l' | ||
| + | Ainsi, avec la commande TeX '' | ||
| + | des couleurs dans le fichier DVI. Le pilote DVI n'y touchera pas, il se contentera de transmettre ces information | ||
| + | à des filtres de post-traitement. Il existe de nombreuses commandes spéciales DVI, dont les plus remarquables | ||
| + | sont des commandes spéciales PostScript (utilisée intensivement par l' | ||
| + | mais d' | ||
| + | |||
| + | |||
| + | ----- | ||
| + | // | ||
| + | * [[faquk> | ||
| + | * [[wpfr> | ||
| + | * [[http:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | {{htmlmetatags> | ||
| + | metatag-og: | ||
| + | metatag-og: | ||
| + | }} | ||

