はじめに

Aspose.TeX FOSS for Python は、無料で MIT ライセンスの TeX タイポグラフィエンジンで、Python 上で完全に動作します – LaTeX のインストール不要、Perl ランタイム不要、外部 TeX 配布不要です。パッケージマネージャのコマンド一つでインストールし、TeXJob.run() を呼び出して TeX マークアップを PDF、DVI、または SVG 出力に変換します。

このライブラリは、ドキュメントパイプライン、数式レンダリング、学術出版アプリケーション向けに設計されており、TeX マークアップをプログラム的に処理する必要がある場面に対応します。ファイルパス(FileInputSource)またはメモリ上の文字列(StringInputSource)からの入力を受け付け、バッチワークフローと動的コンテンツ生成の両方に適しています。

Aspose.TeX FOSS は MIT ライセンスでリリースされています。商用利用は制限なく許可されています。


主な機能

PDF 出力(PdfDevice 経由)

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()

SVG出力 via SvgDevice

SvgDeviceは各組版ページをSVGグラフィックとしてレンダリングします。get_all_pages()メソッドはページごとに1つずつ、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()

DVI出力 via DviDevice

DviDeviceはデバイスに依存しない(Device Independent, 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()

ファイルベース入力 with 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()

インメモリ入力 with 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 .

PDF に TeX 文字列を組版する:

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 マークアップです。このプロジェクトはプレアルファ段階です(現在のステータスについては Developer Guide を参照してください)。出力フォーマットのサポートは積極的に開発中です。


オープンソースとライセンス

Aspose.TeX の Python 向け FOSS は MIT ライセンスの下でリリースされています。商用利用は料金や制限なしで許可されています。


入門

関連リソース