Introduction
Aspose.TeX FOSS for Python exposes a concise engine API built around three concepts: یک نقطه ورودی (TeXJob(تولید دستگاه های خروجی)PdfDevice, DviDevice, SvgDeviceو دو نوع منبع ورودی (FileInputSource, StringInputSource). این مقاله هر یک از اجزای را پوشش می دهد و نشان می دهند که چگونه آنها برای تولید PDF، DVI، …, و تولید SVG از برچسب TeX.
تیکس - نقطه ورود
TeXJob این کلاس اصلی برای رانندگی موتور TeX است. آن را یک منبع ورودی، یک تجهیزات خروجی و گزینه ای TeXOptions,پس از آن، خط لوله ای که در حال اجرا است، run() ارزش بازگشت بایت های خروجی برای انواع دستگاه است که تولید می کند. یک خروجی واحد (PDF، DVI)؛ برای خریدهای SVG، صفحات از شی دستگاه گرفته می شود. بعد از run() تکمیل شده است.
TeXOptions در این مطلب به بررسی روش های ساخت و ساز با استفاده از سیستم های طراحی شده (TeXOptions()) از تنظیمات استاندارد TeX مناسب برای اکثر اسناد استفاده کنید.
تجهیزات خروجی
PDFDevice
PdfDevice در این مقاله به عنوان یک فایل PDF بایت می پردازیم.این است که استاندارد دستگاه خروجی برای تولید خریدهای قابل حمل و چاپ:
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)
After run(),بایت های بازگردانده شامل اسناد PDF کامل است.
دوگانه
DviDevice تولید فرمت Device Independent (DVI) - خروجی داخلی فرمت TeX. خروجی DVI می تواند توسط ابزار های پایین برای رندر یا پردازش بیشتر :
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 هر صفحه را به عنوان یک نمودار وکتور SVG باز می گرداند.پس از انجام کار،, get_all_pages() بازگرداندن لیست از نوار بایت SVG در هر صفحه:
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)
منبع ورودی
FileInputSource
FileInputSource برچسب های ارشیو: TeX Markup from a .tex در این صفحه به صورت دیسک می پردازیم.این حالت ورودی استاندارد هنگام تایپ کردن اسناد موجود:
from aspose_tex import TeXJob, TeXOptions, PdfDevice, FileInputSource
pdf_bytes = TeXJob(FileInputSource("document.tex"), PdfDevice(), options=TeXOptions()).run()
StringInputSource
StringInputSource این روش به عنوان یک خط پایتون شناخته می شود.این حالت ورودی استفاده برای تولید مارکپ پویا – ساختن TeX به صورت برنامه نویسی و بدون نوشتن به دیسک:
from aspose_tex import TeXJob, TeXOptions, PdfDevice, StringInputSource
tex = "Hello, world!"
pdf_bytes = TeXJob(StringInputSource(tex), PdfDevice(), options=TeXOptions()).run()
ترکیب اجزای
سه عنصر با هم کار می کنند تا یک خط لوله کامل را تشکیل دهند.منبع ورودی را انتخاب کنید که متناسب با جریان داده شما و دستگاهی که با فرمت خروجی شما مطابقت دارد:
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")
راهنمایی ها و بهترین شیوه ها
- استفاده از
StringInputSourceبرای تکه های کوتاه یا پویا تولید شده؛ استفاده ازFileInputSourceدر حالی که با موجودی کار می کنند.texفایل ها . PdfDeviceبیشترین استفاده از فرمت های خروجی؛ استفادهSvgDeviceوقتی درگیر می شود تولید TeX در صفحات وب یا جریان های کار گرافیک وکتور.- Reuse
TeXOptionsدر صورت انجام کارهای مختلف، با استفاده از چندین همان تنظیمات. - و این
run()ارزش بازگشت بهbytesبرای PDF و DVI؛ برای SVG، بایت ها از دست رفتهSvgDevice.get_all_pages()پس از اتمام کار،.
API خلاصه ای از ارجاعات
| Class | Role |
|---|---|
TeXJob | نقطه ورودی؛ خط لوله تایپ سازی TeX را هدایت می کند |
TeXOptions | تنظیمات موتور؛ کار پیش فرض برای اکثر اسناد |
PdfDevice | دستگاه خروجی تولید بایت های PDF |
DviDevice | دستگاه خروجی تولید بایت های DVI |
SvgDevice | دستگاه خروجی تولید SVG از طریق صفحه get_all_pages() |
FileInputSource | واردات از A .tex فایل روی دیسک |
StringInputSource | واردات از یک خط Python |