1. محصولات
  2.   Aspose.TeX
  3.   Aspose.TeX FOSS for Python

Aspose.TeX FOSS برای Python

کتابخانهٔ رایگان و تحت مجوز MIT Python برای تولید خروجی PDF، DVI و SVG از نشانه‌گذاری TeX. نیازی به زمان اجرا LaTeX نیست.

Aspose.TeX FOSS — موتور TeX Python متن‌باز

Aspose.TeX FOSS برای Python (aspose-tex) یک موتور حروف‌چینی TeX رایگان، با مجوز MIT است برای توسعه‌دهندگان Python. این PDF تولید می‌کند، خروجی DVI یا SVG — نیازی به نصب LaTeX یا زمان اجرا خارجی نیست.

کتابخانه سه دستگاه خروجی را ارائه می‌دهد: PdfDevice برای خروجی PDF، DviDevice برای خروجی DVI، و SvgDevice برای خروجی SVG چند صفحه‌ای. کلاس TeXJob اصلی است. نقطه ورودی؛ یک FileInputSource یا StringInputSource و یک دستگاه خروجی می‌پذیرد، سپس موتور حروف‌چینی را زمانی که .run() فراخوانی می‌شود اجرا می‌کند.

Aspose.TeX FOSS برای Python تحت مجوز MIT منتشر شده است. در Python 3.10+ اجرا می‌شود. محیط‌ها بر روی تمام سیستم‌عامل‌های اصلی شامل لینوکس، macOS و ویندوز. نصب با pip install aspose-tex>=26.5. نیازی به وابستگی Ghostscript یا TeX Live نیست. برای محصول سازمانی، به Aspose.TeX for Python — Enterprise Product مراجعه کنید.

خروجی PDF و DVI

  • PdfDevice PdfWriter را می‌پیچد تا بایت‌های خروجی PDF 1.4 تولید کند
  • DviDevice برای خروجی DVI، DviWriter را محاط می‌کند
  • TeXJob.run() برمی‌گرداند bytes یا می‌نویسد به یک Path یا BytesIO
  • پردازش در حافظه — نیازی به فایل‌های موقت نیست

موارد استفاده

  • معادلات ریاضی و اسناد فنی را به PDF قالب‌بندی کنید
  • خروجی آماده چاپ را از منبع TeX تولید کنید
  • تبدیل دسته‌ای فایل‌های TeX در خطوط لوله CI/CD
  • تولید DVI برای ابزارهای پایین‌دستی

خروجی SVG

  • SvgDevice SvgWriter را برای خروجی چندصفحه‌ای SVG 1.1 می‌پیچاند
  • get_bytes() بایت‌های SVG را برای اسناد تک‌صفحه برمی‌گرداند
  • get_all_pages() یک لیست از بایت‌ها را برای اسناد چند صفحه‌ای برمی‌گرداند
  • خروجی برداری تمیز برای استفاده در وب و نمایش

موارد استفاده

  • رندر معادلات TeX به‌صورت SVG درون‌خطی برای صفحات وب
  • صادرات شکل‌های تنظیم‌شده به فرمت برداری مقیاس‌پذیر
  • ایجاد نمودارها و نمادهای ریاضی
  • ارائه خروجی SVG از APIها و سرویس‌های وب

منابع ورودی انعطاف‌پذیر

  • StringInputSource — نشانه‌گذاری TeX را به‌عنوان یک رشته Python ارائه دهید
  • FileInputSource — خواندن منبع TeX از مسیر فایل روی دیسک
  • InputReader — پروتکل پایه برای پیاده‌سازی‌های ورودی سفارشی
  • TeXOptions.load_format — پیش‌بارگذاری قالب کنترل

موارد استفاده

  • پردازش نشانه‌گذاری TeX به‌صورت پویا در حافظه
  • تبدیل فایل‌های TeX از دیسک در گردش‌های کار دسته‌ای
  • ادغام رندرینگ TeX در برنامه‌های وب
  • پردازش زنجیره‌ای TeX با سایر خطوط داده

مدیریت فونت

  • FontManager دسترسی به معیارهای قلم TFM را فراهم می‌کند
  • FontEncoding کدهای کاراکتر TeX را به نام‌های گلیف PostScript نگاشت می‌کند
  • FontMetrics عرض، ارتفاع و عمق را برای هر کاراکتر ارائه می‌دهد
  • TeXOptions.extra_font_paths — گسترش مسیر جستجوی قلم

موارد استفاده

  • از قلم‌های سفارشی TFM در کارهای تنظیم حروف استفاده کنید
  • دسترسی برنامه‌نویسی به داده‌های متریک کاراکتر
  • عیب‌یابی حل فونت و مشکلات کدگذاری
  • موتور را با دایرکتوری‌های قلم اضافی گسترش دهید

پردازش TeX به PDF

با pip install aspose-tex>=26.5 نصب کنید، سپس یک رشته TeX را تنظیم کنید تا بایت‌های PDF به دست آید:

from aspose_tex import StringInputSource, PdfDevice, TeXJob, TeXOptions
opts = TeXOptions(load_format=False)
result = TeXJob(
    StringInputSource(r"Hello -- done"),
    PdfDevice(),
    options=opts,
).run()
# result is bytes containing a valid PDF

پردازش فایل TeX به SVG

منبع TeX را از یک فایل بخوانید و هر صفحه را به‌صورت SVG صادر کنید:

from aspose_tex import FileInputSource, SvgDevice, TeXJob, TeXOptions
opts = TeXOptions(load_format=False)
device = SvgDevice()
TeXJob(FileInputSource("input.tex"), device, options=opts).run()
pages = device.get_all_pages()  # list[bytes] of SVG per page

خروجی TeX به DVI

از DviDevice برای تولید خروجی DVI استفاده کنید:

from aspose_tex import StringInputSource, DviDevice, TeXJob, TeXOptions
opts = TeXOptions(load_format=False)
result = TeXJob(
    StringInputSource(r"\hbox{Test}-- done"),
    DviDevice(),
    options=opts,
).run()
# result is bytes containing DVI data

سوالات متداول

مدل مجوزدهی چیست؟

Aspose.TeX FOSS برای Python تحت مجوز MIT منتشر شده است. استفاده تجاری بدون هزینه یا محدودیت مجاز است.

آیا وابستگی‌های بومی وجود دارد؟

نه. این یک بستهٔ خالص Python است که نیازی به نصب LaTeX، زمان اجرای Perl، یا توزیع خارجی TeX ندارد.

کدام فرمت‌های خروجی پشتیبانی می‌شوند؟

PDF (PdfDevice)، DVI (DviDevice) و SVG (SvgDevice). ورودی، نشانه‌گذاری TeX از یک فایل یا رشته است.

چگونه خروجی PDF تولید کنم؟

از TeXJob(StringInputSource(content), PdfDevice(), options=TeXOptions()).run() برای دریافت بایت‌های PDF استفاده کنید.

آیا می‌توانم TeX را از یک رشته در حافظه بخوانم؟

بله. از StringInputSource برای ارسال مستقیم نشانه‌گذاری TeX بدون نوشتن روی دیسک استفاده کنید.

  

منابع پشتیبانی و آموزش

 فارسی