メインのTex入力ファイルを提供する他の方法| C ++

メイン入力ファイルをTexエンジンにストリームとして提供する

この時点まで、 メイン入力ファイルをファイル名としてTEXエンジンに渡す方法、完全に指定されているか短い形式で、拡張機能であろうとそれなしで渡す方法を知っていました。しかし、「Texjob`クラスの別の コンストラクターがあります。これは、最初の引数としてストリームを採用しています。これは、何らかの理由でディスクファイルシステム上のファイル以外のフォームにメインの入力ファイルがある場合に便利です。これがどのように実装されているかは次のとおりです。

1// Create conversion options instance.
2...
3// Create some device.
4...
5// Run LaTeX to XPS conversion.
6System::MakeObject<Aspose::TeX::TeXJob>(System::MakeObject<System::IO::MemoryStream>(System::Text::Encoding::get_ASCII()->GetBytes(
7    u"\\documentclass{article} \\begin{document} Hello, World! \\end{document}")), device, options)->Run();

すべての出力ファイルには texputという名前が付いていることに注意してください。これは、エンジンが他の名前をどこにでも入手できないためです。 texputはデフォルトのジョブ名です。 ここおよび ここは、ジョブ名の詳細です。

ターミナルからメインTEX入力ファイルを入力します

「Texjob」クラスにはさらに別の コンストラクターがありますが、入力をまったく指定できません。それで、そのようなTexの仕事は何を処理しようとしているのでしょうか?今回は入力端子が必要です。 Texエンジンは、端末からファイル名を入力するように依頼します。

これがコードです:

1// Create conversion options instance.
2...
3// Run LaTeX to XPS conversion.
4System::MakeObject<Aspose::TeX::TeXJob>(System::MakeObject<XpsDevice>(), options)->Run();

実行されるとすぐに、エンジンが固執し、ファイル名を入力するのを待っています(パスの有無にかかわらず、拡張機能の有無にかかわらず):

端子ウィンドウ

そして、これはコンソールである出力端末をどのように見えるかです:

 1This is ObjectTeX, Version 3.1415926-1.0 (Aspose.TeX 21.8)
 2entering extended mode
 3**<path_to_the_file>/hello-world.ltx
 4(<path_to_the_file>/hello-world.ltx
 5LaTeX2e <2011/06/27>
 6(article.cls
 7Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
 8(size10.clo))
 9No file hello-world.aux.
10[1]
11(<output_directory>\hello-world.aux) )
12Output written on hello-world.xps (1 page).
13Transcript written on hello-world.log.

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.