Output Formats

Output Formats

Aspose.TeX FOSS for Python supports three output formats through interchangeable output device classes. Pass the appropriate device to TeXJob and call run() to obtain the typeset output. PdfDevice returns PDF bytes directly from run(). DviDevice returns DVI bytes from run(). SvgDevice does not return bytes from run() — instead, retrieve per-page SVG byte strings using SvgDevice.get_all_pages() after run() completes.


PDF via PdfDevice

from aspose_tex import TeXJob, TeXOptions, PdfDevice, StringInputSource

pdf_bytes = TeXJob(StringInputSource("Hello!"), PdfDevice(), options=TeXOptions()).run()
with open("output.pdf", "wb") as f:
    f.write(pdf_bytes)

DVI via DviDevice

from aspose_tex import TeXJob, TeXOptions, DviDevice, StringInputSource

dvi_bytes = TeXJob(StringInputSource("Hello!"), DviDevice(), options=TeXOptions()).run()
with open("output.dvi", "wb") as f:
    f.write(dvi_bytes)

SVG via SvgDevice

from aspose_tex import TeXJob, TeXOptions, SvgDevice, StringInputSource

device = SvgDevice()
TeXJob(StringInputSource("Hello!"), device, options=TeXOptions()).run()
for i, svg in enumerate(device.get_all_pages()):
    with open(f"page_{i}.svg", "wb") as f:
        f.write(svg)

Choosing an Output Format

Use CaseDeviceNotes
Print or sharePdfDevicePortable; most compatible
Web / vector graphicsSvgDevicePer-page SVG via get_all_pages()
Traditional TeX pipelineDviDeviceDVI format for downstream tools

API Reference Summary

ClassDescription
PdfDeviceProduce PDF output bytes
DviDeviceProduce DVI output bytes
SvgDeviceProduce per-page SVG output
SvgDevice.get_all_pages()Return list of SVG byte strings

See Also