Aspose.TeX的输出接口| Python

有关 I/O 实现的正式定义,请参考 Aspose.TeX for PythonAPI 参考

输出目录背后的想法

aspose.tex将目录定义为名称和大部分数据之间的映射,其中大部分数据可以是文件,流,数组或其他类型的数据。 API允许规范单独的输入和输出工作目录。对于输出,API提供了常规 iOutputWorkingDirectory接口,该接口可以由用户为其特定需求而实现。此外,API提供了现成的实现,将在下面讨论。 iOutputworkingDirectory接口扩展了 iinputworkingDirectory,因为引擎可能首先创建和编写文件,然后将其读回。该接口包括 get_output_file()方法,该方法返回流写为写入的流,与 get_file()方法相比,该方法返回流以从中读取的流。

将输出作为文件保存在磁盘文件系统中

上面所述, output_working_directory通常被设置为 outputfilesystemdirectory类的实例。

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

1# Create conversion options instance.
2...
3# Specify a file system working directory for the output.
4options.output_working_directory = OutputFileSystemDirectory(Utils.output_directory)

这种特殊的用例很简单,因此无需进一步深入研究。

将输出作为邮政编码文件保存。

另一个选项是创建文件或流,并将其用作zip存档来存储输出文件。这是一个示例:

1# Open the stream for the ZIP archive that will serve as the output working directory.
2with open(path.join(Utils.output_directory, "zip-pdf-out.zip") as out_zip_stream:
3    # Create conversion options instance.
4    ...
5    # Specify a ZIP archive working directory for the output.
6    options.output_working_directory = OutputZipDirectory(out_zip_stream)

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

输出终端背后的想法

终端输出是输出的另一个重要方面。为此,aspose.tex for Python定义了常规 iOutputterminal接口,该接口具有单个属性,该属性返回 终端作者实现的实例。可用的实现将在下面讨论。

将终端输出写入控制台

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

1# Create conversion options instance.
2...
3# Specify the console as the input terminal.
4options.terminal_out = OutputConsoleTerminal()  # Default value. Arbitrary assignment.

再次,这是该选项的默认值,因此无需指定它。因此,本节仅用于演示目的。

将终端输出写入文件

与输入终端相反,aspose.tex的python包括iOutputterm接口的实现,使我们能够将终端输出写入指定的输出目录中的文件。

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.terminal_out = OutputFileTerminal(options.output_working_directory)

在这种情况下,我们指示TEX引擎将终端输出写入名为 <job_name>.TRM的文件,该文件将位于与其余输出的同一输出目录中。但是,这不是强制性的。我们还可以向构造函数提供 iOutputtermal实现的任何其他实例。

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.