将 TeX 转换为 PDF XPS

TeX 文件可能包含文本、符号或算术表达式。这些用于排版文档,您可以将 TeX 输入排版为 PDFXPS 和其他几种 支持的格式。在本文中,您将学习如何使用 C# 以编程方式将 TeX 转换为 PDF 或 XPS 文件。以下部分详细解释了该主题:

TeX 到 PDF 或 XPS 转换器 – C# API 安装

Aspose.TeX for .NET API 设计用于将 TeX 文件排版为不同的文件格式,如 PDF、XPS 或图像。您可以通过从 Downloads 部分下载 DLL 文件来快速配置 API,也可以使用以下安装命令从 NuGet 安装它:

PM> Install-Package Aspose.TeX

使用 C# 以编程方式将 TeX (LaTeX) 转换为 PDF

您可以通过以下步骤将 TeX 转换为 PDF 文件:

  1. 为默认 ObjectTeX 格式创建排版选项。
  2. 指定控制台或内存流作为输出终端。
  3. 设置渲染为 PDF 格式的选项。
  4. 调用 TexJob 类构造函数并使用 PdfDevice 类对象保存输出 PDF。

以下代码片段说明了如何使用 C# 以编程方式将 TeX 转换为 PDF 文件:

String dataDir = @"D:\test\";

// 为默认的 ObjectTeX 格式创建排版选项。
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());

// 为输入指定文件系统工作目录。
options.InputWorkingDirectory = new InputFileSystemDirectory(dataDir);

// 指定用于输出的文件系统工作目录。
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);

// 指定内存流作为输出终端。
options.TerminalOut = new OutputMemoryTerminal();

// 设置渲染为 PDF 格式的选项。
options.SaveOptions = new PdfSaveOptions();

// 运行排版。
new TeXJob("hello-world", new PdfDevice(), options);

传递给 TexJob 类构造函数的参数在这里值得注意。第一个是输入TeX文件的路径,第二个是Device类型,第三个是TexOptions

使用 C# 将 TeX ZIP 目录转换为 PDF ZIP 目录

您可能需要一次将多个 TeX 文件转换为 PDF。在这种情况下,您可以将 ZIP 存档中的 TeX 文件转换为压缩格式的 PDF 文档。您需要按照以下步骤操作:

  1. 在 ZIP 档案中打开流作为输入和输出工作目录。
  2. 使用 TeXOptions 类对象创建排版选项。
  3. 使用 PdfSaveOptions 创建和指定保存选项。
  4. 使用 TexJob 类构造函数运行排版。

下面的代码详细说明了如何使用 C# 以编程方式将 TeX ZIP 存档转换为 PDF ZIP 存档:

String dataDir = @"D:\test\";

// 在将用作输入工作目录的 ZIP 存档上打开一个流。
using (Stream inZipStream = File.Open(Path.Combine(dataDir, "zip-in.zip"), FileMode.Open))

// 在将用作输出工作目录的 ZIP 存档上打开一个流。
using (Stream outZipStream = File.Open(Path.Combine(dataDir, "terminal-out-to-zip.zip"), FileMode.Create))
{
    // 在 ObjectTeX 引擎扩展上为默认的 ObjectTeX 格式创建排版选项。
    TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());

    // 指定作业名称。
    options.JobName = "terminal-output-to-zip";

    // 为输入指定一个 ZIP 归档工作目录。
    options.InputWorkingDirectory = new InputZipDirectory(inZipStream, "in");

    // 为输出指定一个 ZIP 归档工作目录。
    options.OutputWorkingDirectory = new OutputZipDirectory(outZipStream);

    // 指定必须将终端输出写入输出工作目录中的文件。
    options.TerminalOut = new OutputFileTerminal(options.OutputWorkingDirectory);

    // 创建并指定保存选项。
    options.SaveOptions = new PdfSaveOptions();

    // 运行排版。
    new TeXJob("hello-world", new PdfDevice(), options);

    // 完成输出 ZIP 存档。
    ((OutputZipDirectory)options.OutputWorkingDirectory).Finish();
}

使用 C# 以编程方式将 TeX (LaTeX) 转换为 XPS 文件

您可以通过以下步骤将 TeX 转换为 XPS 文件:

  1. 在 ObjectTeX 引擎扩展上创建排版选项。
  2. 为输入和输出指定文件系统工作目录。
  3. 通过使用 XpsDevice 运行 Typesetting 将 TeX 转换为 XPS。

以下代码显示了如何使用 C# 以编程方式将 TeX 文件转换为 XPS:

String dataDir = @"D:\test\";

// 在 ObjectTeX 引擎扩展上为默认的 ObjectTeX 格式创建排版选项。
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());

// 为输入指定文件系统工作目录。
options.InputWorkingDirectory = new InputFileSystemDirectory(dataDir);

// 指定用于输出的文件系统工作目录。
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);

// 指定控制台作为输出终端。
options.TerminalOut = new OutputConsoleTerminal();

// 运行排版
new TeXJob("hello-world", new XpsDevice(), options);

获取免费 API 许可证

您可以通过请求 免费临时许可证 来评估具有完全访问权限的 API。

结论

在本文中,您探索了如何使用 C# 以编程方式将 TeX 文件转换为 PDF 或 XPS 文件。此外,您还学习了如何在 ZIP 存档中转换 TeX 文件并创建输出 ZIP 目录。您可以通过访问 API 文档 了解其他几个功能。如有任何疑问,请随时通过 免费支持论坛 与我们联系。

也可以看看