介绍

Aspose.TeX FOSS 用于 Python 是一个免费、MIT 许可证的 TeX 排版引擎,完全在 Python 中运行——无需 LaTeX 安装,无需 Perl 运行时,也不需要外部 TeX 分发。使用单一的包管理器命令进行安装,并调用 TeXJob.run() 将 TeX 标记转换为 PDF、DVI 或 SVG 输出。

该库专为文档流水线、数学渲染和学术出版应用设计,在这些场景中需要以编程方式处理 TeX 标记。它接受来自文件路径(FileInputSource)或内存字符串(StringInputSource)的输入,使其既适用于批处理工作流,也适用于动态内容生成。

Aspose.TeX FOSS 在 MIT 许可证下发布。商业使用不受限制。


关键特性

通过 PdfDevice 的 PDF 输出

PdfDevice 输出设备将排版内容写入 PDF 字节流。使用 PdfDevice 构建一个 TeXJob 并调用 run() 以获取 PDF 字节:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import PdfDevice
from aspose_tex import StringInputSource

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

通过 SvgDevice 实现 SVG 输出

SvgDevice 将每个排版页面渲染为 SVG 图形。get_all_pages() 方法返回一个 SVG 字节串列表,每页一个:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import SvgDevice
from aspose_tex import StringInputSource

device = SvgDevice()
job = TeXJob(StringInputSource("Hello world!"), device, options=TeXOptions())
job.run()
pages = device.get_all_pages()

通过 DviDevice 实现 DVI 输出

DviDevice 生成设备无关 (DVI) 输出字节——这是传统 TeX 工作流在最终渲染前使用的中间格式:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import DviDevice
from aspose_tex import StringInputSource

source = StringInputSource("Hello world!")
job = TeXJob(source, DviDevice(), options=TeXOptions())
dvi_bytes = job.run()

使用 FileInputSource 的基于文件的输入

FileInputSource 从磁盘上的文件读取 TeX 标记:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import PdfDevice
from aspose_tex import FileInputSource

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

使用 StringInputSource 的内存输入

StringInputSource 接受原始的 TeX 标记作为 Python 字符串:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import PdfDevice
from aspose_tex import StringInputSource

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

快速入门

安装软件包:

git clone https://github.com/aspose-tex-foss/Aspose.TeX-FOSS-for-Python.git
cd Aspose.TeX-FOSS-for-Python
pip install -e .

将 TeX 字符串排版为 PDF:

from aspose_tex import TeXJob, TeXOptions
from aspose_tex import PdfDevice
from aspose_tex import StringInputSource

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

支持的格式

格式扩展名输出设备
PDF.pdfPdfDevice
DVI.dviDviDevice
SVG.svgSvgDevice

输入是以文件路径或内存字符串提供的 TeX 标记。本项目处于 pre-alpha 阶段(请参阅 Developer Guide 了解当前状态);输出格式支持正积极开发中。


开源与许可

Aspose.TeX 针对 Python 的 FOSS 在 MIT 许可证下发布。商业使用在无费用或限制的情况下被允许。


入门

相关资源