Der Befehl latex sowie die japanischen platex / uplatex erzeugen keine PDF-Datei, sondern eine Zwischendatei im Format DVI. Ein DVI-Konverter macht daraus ein wirklich lesbares Dokument: dvipdfmx für PDF, dvips für PostScript und, für japanische Dokumente, ptex2pdf, das Satz und Konvertierung in einem Befehl ausführt. Diese Seite behandelt alle drei und die Optionen, die man praktisch verwendet.
Was DVI ist und warum man es konvertiert
DVI (device-independent) ist das Zwischenformat, das TeX ausgibt: Es hält fest, *welcher Glyph oder welche Linie an welcher Position steht*. Wie der Name sagt, ist es unabhängig vom Ausgabegerät und bettet die eigentlichen Fonts nicht ein. Dadurch ist es kompakt, aber direkt schwer anzusehen, zu drucken oder weiterzugeben. Deshalb konvertiert man es je nach Ziel: PDF für Bildschirm und Verteilung, PostScript für Druckabläufe und bestimmte Pakete. Die Befehle, die DVI *erzeugen*, stehen unter „Compile commands“.
dvipdfmx — von DVI zu PDF
dvipdfmx ist der Standardkonverter von DVI nach PDF in TeX Live. Sein Vorläufer dvipdfm wurde von Mark A. Wicks geschrieben; dvipdfmx ist die erweiterte Fassung von Jin-Hwan Cho, Shunsaku Hirata und anderen, mit CJK-Unterstützung, Font-Einbettung, Objektstreams und mehr. Das von XeTeX intern verwendete xdvipdfmx gehört zur selben Familie, ist aber nicht für direkten Aufruf gedacht.
dvipdfmx document.dvi # → document.pdf
dvipdfmx -p a4 -o out.pdf document.dvi| Option | Wirkung |
|---|---|
-o FILE | Name der Ausgabedatei (- für stdout); Standard ist der Eingabename |
-p SIZE | Papierformat nach Name: a4, letter, a3, legal, ... |
-V N | PDF-Minor-Version (Standard 5 = PDF 1.5) |
-l | Querformat (Breite und Höhe des Papiers tauschen) |
-s RANGE | Beschränkt die verarbeiteten Seiten, z. B. -s 1-10 |
dvips — von DVI zu PostScript
dvips von Tomas Rokicki ist das klassische Werkzeug, das DVI in PostScript (.ps) umwandelt. Es wird weiterhin für Druckabgaben, die Erzeugung von EPS und PostScript-basierte Zeichenpakete wie PSTricks verwendet. Wenn Sie eine PDF-Datei benötigen, führt der übliche Weg über die erzeugte .ps-Datei und ps2pdf aus Ghostscript.
dvips -t a4 -o document.ps document.dvi # DVI → PostScript
ps2pdf document.ps # PostScript → PDF| Option | Wirkung |
|---|---|
-o FILE | Name der auszugebenden PostScript-Datei |
-t PAPER | Papiertyp: a4, letter, legal oder landscape |
-P NAME | Lädt die Druckerkonfiguration config.NAME (Auflösung, Font-Einstellungen) |
ptex2pdf — japanische Dokumente in einem Schritt zu PDF
Für japanische Dokumente sind es normalerweise zwei Schritte: mit uplatex setzen und anschließend mit dvipdfmx eine PDF-Datei erzeugen. ptex2pdf bündelt das in einem Befehl: Es startet eine Engine der pTeX-Familie und ruft danach automatisch dvipdfmx auf. Es ist ein texlua-Skript von texjporg, der japanischen TeX-Entwicklergemeinschaft, und Norbert Preining, ursprünglich gebaut, damit TeXworks leicht eine japanische Engine auswählen konnte.
Die Engine wählen Sie durch Kombination von Flags. Ohne Flag ist es ptex; -l wählt ein LaTeX-Format, -u die upTeX-Familie, -e die e-pTeX-Familie. upLaTeX, der Standard für japanische Arbeiten, ist zum Beispiel -l -u.
| Flags | Verwendete Engine |
|---|---|
(なし / none) | ptex |
-l | platex (pLaTeX) |
-u | uptex |
-l -u | uplatex (upLaTeX) |
# upLaTeX で組版し、UTF-8 入力と SyncTeX を指定して PDF まで
ptex2pdf -l -u -ot '-kanji=utf8 -synctex=1' document.texFeinere Optionen reichen Sie mit -ot '...' an die TeX-Engine und mit -od '...' an dvipdfmx weiter. Mit -s stoppen Sie bei DVI, mit -i behalten Sie Zwischendateien, und mit -output-directory ändern Sie den Ausgabeort.
Welches Werkzeug verwenden?
- PDF, englischer/europäischer Text —
latex→dvipdfmx. - PDF, japanischer Text — ein Durchlauf mit
ptex2pdf -l -u …. - Druckabgabe, EPS, PSTricks —
dvips→ps2pdf. - DVI ganz vermeiden — PDF direkt mit
pdflatex/lualatexausgeben.
In der Praxis führt man diese Befehle selten nacheinander von Hand aus. Ein Build-Werkzeug wie latexmk kümmert sich um die Anzahl der Kompilierläufe und die DVI-Konvertierung; latexmk unterstützt auch die Kombination (u)platex + dvipdfmx.
DVI-Konvertierung vor der Abgabe prüfen
- Bei PDF-Abgabe: Öffnen Sie die PDF nach
dvipdfmxim selben Viewer oder Upload-Ziel wie später und prüfen Sie eingebettete Fonts, Papierformat, Lesezeichen und Links. - Bei Druckabläufen: Prüfen Sie vor und nach
ps2pdfauf dem vondvipserzeugten PostScript, ob EPS und PostScript-Specials erhalten geblieben sind. - Bei japanischen Dokumenten:
ptex2pdf -l -uist bequem, aber entscheidend ist, dass der Zweischrittuplatexplusdvipdfmxerfolgreich durchläuft. - Namen und Orte: Halten Sie die Basisnamen von DVI, PDF und
.synctex.gzgleich; wenn Ausgaben woanders landen, soll das Build-Werkzeug diesen Pfad konsequent setzen.