Qu'est-ce que le format de fichier DVI ?
Un fichier .dvi est le document composé binaire produit par les systèmes de composition TeX et LaTeX. Le nom signifie « Device Independent » (indépendant du périphérique), reflétant l'objectif de conception : le format encode précisément chaque position de glyphe et chaque règle sur chaque page sans s'engager sur un périphérique de sortie spécifique - imprimante, écran ou photocomposeuse.
Les fichiers DVI sont des flux séquentiels d'opcodes. Le premier octet est toujours 0xF7 (l'opcode de préambule pre) et le deuxième octet est la version du format : 0x02 pour le DVI standard ou 0x03 pour la variante étendue Omega/Lambda avec prise en charge du texte bidirectionnel. Les blocs de pages délimités par les opcodes bop et eop enregistrent les positions absolues des glyphes, les sélections de polices et les règles de boîte. Un postambule suit, contenant la table des polices et les dimensions des pages, et des octets de remplissage 0xDF complètent le fichier jusqu'à une limite de quatre octets.
Une caractéristique critique : les fichiers DVI référencent les polices par leur nom et leur somme de contrôle TFM mais ne les incorporent pas. Le visionneur ou le convertisseur doit disposer des polices référencées localement - généralement via une distribution TeX. Cela diffère du PDF, qui incorpore des sous-ensembles de polices pour un rendu autonome.
Les moteurs TeX modernes contournent de plus en plus le .dvi : pdfLaTeX et LuaLaTeX produisent directement du PDF ; XeTeX émet un fichier DVI étendu intermédiaire .xdv. La chaîne classique - .tex → .dvi → dvips → .ps → PDF - reste pleinement fonctionnelle sous TeX Live et MiKTeX. Le TeX simple et le LaTeX standard (moteurs non-PDF) continuent d'émettre du .dvi comme sortie native.
Sécurité et sûreté
RISQUE : LOWLes fichiers DVI ne contiennent aucun script ou macro incorporé. Les commandes « xxx » (special) incorporent des chaînes spécifiques au pilote (par exemple, des commandes PostScript via dvips) mais celles-ci sont uniquement interprétées par le pilote DVI, pas exécutées comme du code. Format à faible risque utilisé exclusivement dans les contextes académiques et TeX.
Détails du format
en bref- Digital Video Interface (connecteur matériel) - DVI fait également référence à la norme de connecteur d'affichage (DVI-D, DVI-I, DVI-A) - totalement sans rapport ; il s'agit de matériel et non d'un format de fichier.
Programmes qui ouvrent les fichiers DVI
Détails techniques
spécifications approfondies| Encodage | Flux d'opcodes binaire ; les entiers multi-octets sont en gros-boutiste (big-endian) |
| Signature de fichier | 0xF7 à l'offset 0 (opcode de préambule pre) ; 0x02 à l'offset 1 pour la version standard du format DVI |
| Variantes du format | Octet de version 0x02 = DVI standard ; 0x03 = DVI étendu Omega/Lambda (bidirectionnel RTL/LTR) ; XDV = extension XeTeX |
| Structure du fichier | Préambule → blocs de pages (opcodes bop/eop) → postambule (table des polices, nombre de pages, dimensions) → octets de remplissage 0xDF |
| Gestion des polices | Polices référencées par nom et somme de contrôle TFM ; non incorporées - le visionneur nécessite l'installation locale des polices |
| Somme de contrôle de police | Somme de contrôle TFM incorporée par enregistrement de définition de police ; une discordance déclenche un avertissement du visionneur |
| Terminaison du fichier | Les octets de remplissage 0xDF complètent la longueur totale du fichier à un multiple de 4 octets |
| Taille de fichier typique | 10 Ko - 5 Mo (de l'article académique au livre complet) |
| Système de coordonnées | Dimensions en unités DVI (1 unité DVI = 100 nm avec un grossissement par défaut de 1000 unités) ; positionnement absolu sur la page |
| OS associés | Linux, Windows, macOS, Unix (multiplateforme via TeX Live, MiKTeX, MacTeX) |
| Chaîne de post-traitement | dvips convertit en PostScript ; dvipdfm/dvipdfmx convertit en PDF ; dvisvgm convertit en SVG |
| Ordre des octets | Big-endian pour tous les entiers multi-octets dans les opcodes DVI |
| Publié | 1979 (with TeX; first described in TUGboat 1982) |
| Dernière version | DVI format 2 (standard); format 3 = DVItype with mixed RTL/LTR (Omega/Lambda); XDV = extended DVI used by XeTeX |
| Standard ouvert | Oui · libre de droits |
| Spécification | www.mn.uio.no |
Conversions DVI
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers DVI.