Uvod u članak

Aspose.TeX FOSS for Python exposes a concise engine API built around three concepts: U tom slučaju, Komisija je u skladu s člankom 20. stavkom 1. točkom (b) Uredbe.TeXJob), priključivim izlaznim uređajima (PdfDevice, DviDevice, SvgDevice), i dva tipa ulaznih izvora (FileInputSource, StringInputSource). Ovaj članak obuhvaća svaku komponentu i pokazuje kako se kombiniraju u proizvodnju PDF-a, DVI-e, i SVG izlaz od TeX oznake.


TeXJob Točka ulaza

TeXJob To je glavna klasa za pokretanje TeX motora. Prihvaća izvor ulaza, i Uređaj za izlaz i opcionalni uređaj TeXOptions, zatim pokreće tipiranje cijevi kada run() Vrijednost povratka je izlaz bajtova za tipove uređaja koji proizvode U slučaju SVG izdanja, stranice se preuzimaju s objekta uređaja. nakon run() -Dokonča.

TeXOptions Konstrukcija je s podrazumijevanjem (TeXOptions()) Koristi standardne TeX postavke koji su pogodni za većinu dokumenata.


Izlazni uređaji

PdfDevice

PdfDevice piše tipoviti dokument na PDF bajt. To je standardna “Snimka” koja se koristi za određivanje broja osoba koje su u stanju da izvrše oba zadatka.:

from aspose_tex import TeXJob, TeXOptions, PdfDevice, StringInputSource

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

Nakon što je… run(), vraćene bajtove sadrže kompletan PDF dokument.

DviDevice

DviDevice proizvede izlaz u formatu Device Independent (DVI) izvorni intermedijat DVI izlaz može biti upotrebljen od strane alatki za renderiranje ili prikaz. daljnja obrada:

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)

SvgDevice

SvgDevice Nakon što se posao pokrene, get_all_pages() Vrši popis SVG bajtnih nizova po stranici:

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)

Izvor ulaza

FileInputSource

FileInputSource Čita TeX oznake iz a .tex Ovo je datoteka na disku. standardni način unosa pri postavljanju postojećih dokumenata:

from aspose_tex import TeXJob, TeXOptions, PdfDevice, FileInputSource

pdf_bytes = TeXJob(FileInputSource("document.tex"), PdfDevice(), options=TeXOptions()).run()

StringInputSource

StringInputSource Prihvaća TeX oznake kao Python niz. Ovaj način unosa je Koristi se za dinamičko generiranje oznaka programsko konstruirati TeX i tipiranje bez pisanja na disk:

from aspose_tex import TeXJob, TeXOptions, PdfDevice, StringInputSource

tex = "Hello, world!"
pdf_bytes = TeXJob(StringInputSource(tex), PdfDevice(), options=TeXOptions()).run()

Kombinacija komponenti

Tri komponente rade zajedno kako bi formirale kompletan tipoviti sustav. Odaberite izvor ulaza koji odgovara vašem protoku podataka i uređaj koji podudara vaš izlazni format:

from aspose_tex import TeXJob, TeXOptions, SvgDevice, FileInputSource

device = SvgDevice()
TeXJob(FileInputSource("report.tex"), device, options=TeXOptions()).run()
pages = device.get_all_pages()
print(f"{len(pages)} SVG pages produced")

Savjeti i najbolje prakse

  • Upotreba: StringInputSource za kratke ili dinamički generirane fragmente TeX-a; upotrebu FileInputSource pri radu s postojećim .tex -Dopisi.
  • PdfDevice je najprenosniji format izdanja; upotrebljava se: SvgDevice prilikom ugradnje Izlaz TeX-a na web stranicama ili u radnim tokovima vektorske grafike.
  • Ponovna upotreba TeXOptions U slučaju da se obrađuje više dokumenata s istih postavki.
  • U skladu s člankom 1. run() vrijednost povratne vrijednosti je: bytes za PDF i DVI; za SVG, bajtovi su: preuzeto iz: SvgDevice.get_all_pages() Nakon što posao završi.

Svrha referentnog API-a

RazredUloga
TeXJobUlazna točka; upravlja TeX tipom za postavljanje cijevi
TeXOptionsKonfiguracija motora; podrazumijevani rad za većinu dokumenata
PdfDeviceIzlazni uređaj koji proizvodi PDF bajtove
DviDeviceIzlazni uređaj koji proizvodi DVI bajtove
SvgDeviceIzlazni uređaj koji proizvodi SVG na stranu putem: get_all_pages()
FileInputSourceUvod iz .tex datoteka na disku
StringInputSourceUvod iz Python string-a

Također pogledajte:

Početak

Srodni resursi