pdfTeX oder pdfLaTeX unter Windows/Java mit Bytestream

pdfTeX oder pdfLaTeX unter Windows/Java mit Bytestream

Ich arbeite an der Servlet-Programmierung und habe mich gefragt, ob pdfTeX oder pdfLaTeX über eine Möglichkeit verfügen, Bytestreams unter Windows ein- oder auszugeben. Auf diese Weise könnte ich einen String direkt einspeisen und die Ausgabe als PDF-Antwort an den Client streamen ... irgendwelche Ideen?

Antwort1

Bis zu einem gewissen Grad pdfTeXkann Standardeingabe gelesen werden. Es ist jedoch nicht ungewöhnlich, eine LaTeX-Datei mehr als einmal zu kompilieren, z. B. für das Inhaltsverzeichnis oder um die Referenzen richtig zu machen.

Als Ausgabedatei (pdf) schreibt TeX .login jedem Fall eine Datei und die Ausgabedatei ist nicht für Streaming geeignet, da pdfTeXin der geschriebenen Ausgabedatei zurückgesprungen wird. (Es schreibt die Länge des Streams eines PDF-Stream-Objekts in das Wörterbuch dieses Objekts vor dem Stream-Teil.) Und LaTeX möchte möglicherweise Hilfsdateien ( .aux, .toc, …) schreiben.

Somit könnte das Servlet den Eingabestrom lesen, ihn in eine Datei in einem temporären Verzeichnis schreiben und aufrufen (pdf)(la)tex(oder welchen TeX-Compiler/welches Format auch immer). Dann .logmuss die Datei auf Inhalt analysiert werden rerun. Auch andere Programme wie bibtexoder makeindexmüssen möglicherweise aufgerufen werden.

Wenn die Kompilierungsläufe abgeschlossen sind, kann die Ausgabedatei zurückgestreamt und das temporäre Verzeichnis bereinigt werden.

verwandte Informationen