Aspose.TeX的输出接口|爪哇

请参阅java Aspose.TeX API参考有关I/O实现的正式定义。

输出目录的概念

由于tex语言的I/O元素只能处理文件名,因此aspose.tex将目录定义为名称和大部分数据之间的映射。大部分数据应该是文件,流,数组或其他任何数据。API允许我们分别指定输入和输出工作目录。它为输出提供了常规 iOutputworkingDirectory接口,用户可以为其自己的目的实现。它还提供了自己的实现,将在下面讨论。该接口扩展了 iinputworkingDirectory,因为引擎可以首先创建和编写文件,然后将其读回。接口自己的方法 getOuputfile()返回流的流,而不是 getfile()返回的流。

将文件输出输出到磁盘文件系统

正如我们提到的 上图outputWorkingDirectory的最常见值可能是 outputsFilesystemdirectory类的一个实例。

这是我们将其设置的方式:

1// Create conversion options instance.
2...
3// Specify a file system working directory for the output.
4options.setOutputWorkingDirectory(new OutputFileSystemDirectory(Utils.getOutputDirectory()));

此用例非常简单,因此我们很长一段时间都不会呆在上面。

将文件输出写入邮政编码

我们还可以创建一个文件(或流),并让Tex引擎将其用作ZIP存档来存储输出文件。这里是:

 1// Open the stream for the ZIP archive that will serve as the output working directory.
 2final OutputStream outZipStream = new FileOutputStream(Utils.getOutputDirectory() + "zip-pdf-out.zip");
 3{
 4    // Create conversion options instance.
 5    ...
 6    // Specify a ZIP archive working directory for the output.
 7    options.setOutputWorkingDirectory(new OutputZipDirectory(outZipStream));
 8} finally {
 9    if (outZipStream != null)
10        outZipStream.close();
11}

首先,我们为zip文件创建一个输出流。然后,在创建转换选项之后,我们将 outputworkingDirectory选项设置为 outputzipdirectory类的实例。

输出终端的概念

输出中还有另一个重要部分 - 终端输出。至于这个,java的Aspose.TeX将常规 iOutputterminal接口定义为具有两种方法。其中一个返回 BufferedWriter实例。另一个将 outputStream实例作为基础流返回。提供的接口的实现将在下面讨论。

将终端输出写入控制台

为此,我们需要将 终端图选项设置为 outputConsoleterminal类的实例。

1// Create conversion options instance.
2...
3// Specify the console as the input terminal.
4options.setTerminalOut(new OutputConsoleTerminal()); // Default value. Arbitrary assignment.

同样,这是该选项的默认值,因此无需指定它。因此,本节仅提供演示目的。

将终端输出写入文件

与输入终端不同,aspose.tex的Java提供了 iOutputterminal的实现,这使我们能够将终端输出写入某些输出目录中的文件。

1// Create conversion options instance.
2...
3// Specify that the terminal output must be written to a file in the output working directory.
4// The file name is <job_name>.trm.
5options.setTerminalOut(new OutputFileTerminal(options.getOutputWorkingDirectory()));

在这里,我们要求TEX引擎将终端输出写入文件,并使用名称 <job_name>.TRM将其存储在我们为其余输出指定的同一输出目录中存储。但这不是必需的。我们不妨将 IOutputterminal实现的任何其他实例传递给构造函数。

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.