Conversores DVI

El comando latex y los comandos japoneses platex / uplatex no producen un PDF, sino un archivo intermedio DVI. Convertirlo en un documento legible es tarea de un conversor DVI: dvipdfmx para PDF, dvips para PostScript y, para japonés, ptex2pdf, que ejecuta composición y conversión en un solo comando. Esta página cubre los tres y las opciones que realmente se usan.

Qué es DVI y por qué convertirlo

DVI (device-independent) es el formato intermedio que emite TeX: un registro de *qué glifo o regla va en qué posición*. Como indica el nombre, es independiente del dispositivo de salida y no incrusta las fuentes reales. Eso lo hace compacto, pero incómodo para ver, imprimir o compartir directamente; por eso se convierte según el destino: PDF para pantalla y distribución, PostScript para flujos de impresión y ciertos paquetes. Los comandos que *producen* DVI se tratan en “Compile commands”.

dvipdfmx — de DVI a PDF

dvipdfmx es el conversor estándar de DVI a PDF en TeX Live. Su antecesor dvipdfm fue escrito por Mark A. Wicks; dvipdfmx es la versión extendida, por Jin-Hwan Cho, Shunsaku Hirata y otros, con soporte CJK, incrustación de fuentes, flujos de objetos, etc. xdvipdfmx, usado internamente por XeTeX, pertenece a la misma familia, pero no está pensado para invocarse directamente.

terminal
dvipdfmx document.dvi            # → document.pdf
dvipdfmx -p a4 -o out.pdf document.dvi
OpciónQué hace
-o FILENombre del archivo de salida (- para stdout); por defecto se toma del nombre de entrada
-p SIZETamaño de papel por nombre: a4, letter, a3, legal, ...
-V NVersión menor de PDF (por defecto 5 = PDF 1.5)
-lApaisado (intercambia anchura y altura del papel)
-s RANGELimita las páginas procesadas, por ejemplo -s 1-10

dvips — de DVI a PostScript

dvips (de Tomas Rokicki) es la herramienta clásica que convierte DVI en PostScript (.ps). Todavía se usa para entrega a imprentas, generación de EPS y paquetes de dibujo basados en PostScript, como PSTricks. Cuando necesitas un PDF, la ruta habitual es pasar el .ps resultante por ps2pdf (incluido con Ghostscript).

terminal
dvips -t a4 -o document.ps document.dvi   # DVI → PostScript
ps2pdf document.ps                        # PostScript → PDF
OpciónQué hace
-o FILENombre del archivo PostScript de salida
-t PAPERTipo de papel: a4, letter, legal o landscape
-P NAMECarga la configuración de impresora config.NAME (resolución, fuentes)

ptex2pdf — japonés a PDF en un paso

Para japonés se suelen dar dos pasos: componer con uplatex y luego crear el PDF con dvipdfmx. ptex2pdf reúne eso en un solo comando: ejecuta un motor de la familia pTeX y después llama automáticamente a dvipdfmx. Es un script texlua de texjporg, la comunidad japonesa de desarrollo de TeX, y Norbert Preining, creado originalmente para que TeXworks pudiera escoger fácilmente un motor japonés.

El motor se elige combinando flags. Sin ninguno es ptex; -l selecciona un formato LaTeX, -u la familia upTeX y -e la familia e-pTeX. Por ejemplo, upLaTeX, el estándar para artículos japoneses, es -l -u.

FlagsMotor usado
(なし / none)ptex
-lplatex (pLaTeX)
-uuptex
-l -uuplatex (upLaTeX)
terminal
# upLaTeX で組版し、UTF-8 入力と SyncTeX を指定して PDF まで
ptex2pdf -l -u -ot '-kanji=utf8 -synctex=1' document.tex

Para pasar opciones detalladas, usa -ot '...' para el motor TeX y -od '...' para dvipdfmx. Añade -s para detenerte en DVI, -i para conservar archivos intermedios y -output-directory para redirigir la salida.

Cuál usar

  • PDF, texto inglés/europeolatexdvipdfmx.
  • PDF, japonés — una sola pasada con ptex2pdf -l -u ….
  • Entrega a imprenta, EPS, PSTricksdvipsps2pdf.
  • Evitar DVI por completo — emitir PDF directamente con pdflatex / lualatex.

En la práctica rara vez se ejecutan estos comandos a mano en secuencia. Una herramienta de compilación como latexmk se encarga del número de pasadas y de la conversión DVI; latexmk también admite la configuración (u)platex + dvipdfmx.

Comprobación de conversión DVI antes de entregar

  • Para entrega en PDF: después de dvipdfmx, abre el PDF en el mismo visor o destino de subida que usarás y comprueba fuentes incrustadas, tamaño de papel, marcadores y enlaces.
  • Para flujos de impresión: antes y después de ejecutar ps2pdf sobre el PostScript de dvips, confirma que EPS y specials de PostScript se conservan.
  • Para documentos japoneses: ptex2pdf -l -u es cómodo, pero lo esencial es que funcione la ruta de dos pasos uplatex más dvipdfmx.
  • Nombres y ubicaciones: mantén alineados los nombres base de DVI, PDF y .synctex.gz; si las salidas van a otro directorio, haz que la herramienta de build especifique esa ruta de forma coherente.