ラテックスからPDF | Java

ラテックスをPDFに変換する方法

LaTexをPDF形式に変換する最も簡単な方法を提供するJavaコードを詳しく見てみましょう。

1// Create conversion options for Object LaTeX format upon Object TeX engine extension.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3// Specify a file system working directory for the output.
4options.setOutputWorkingDirectory(new OutputFileSystemDirectory(Utils.getOutputDirectory()));
5// Initialize the options for saving in PDF format.
6options.setSaveOptions(new PdfSaveOptions());
7// Run LaTeX to PDF conversion.
8new TeXJob(Utils.getInputDirectory() +  "hello-world.ltx", new PdfDevice(), options).run();

したがって、最初に行う必要があることは(後でわかったように、最初にそうではない場合があります)、 Texoptionsクラスのインスタンスを作成することです。これを行う唯一の静的方法は consoleappoptions()です。そのため、その名前の意味を悩ませないでください。このメソッドは、 TexConfigクラスの インスタンスを取ります。これは LaTexファイルの変換に正確に適しています。この構成は、オブジェクトTex Engineにオブジェクトラテックス形式をロードし、LaTexファイルを受け入れる準備ができるように指示します。オブジェクトラテックス形式は、 Object Tex特定のプリミティブを使用してページメトリックをセットアップすることを除いて、 LaTex形式にすぎません。

必要なオプションの最初は outputworkingdirectoryで、TEX出力が記述されるスペースまたはエリアを定義します。 ここは、java for Aspose.TeXの出力ディレクトリの概念の詳細です。この例では、 outputfilesystemdirectoryクラスを使用して、指定されたディレクトリまたはフォルダーに出力を書き込むことができます。

2番目のオプションは、 オブジェクトモデルのターゲット形式への変換を制御する SaveOptionsクラスインスタンスです。ラテックスをPDFに変換しているため、 PDFSaveOptionsクラスインスタンスです。

次に、 texjobクラスのインスタンスを作成する必要があります。ファイルシステムに保存されているラテックスファイルを変換したいので、 Thisバージョンのコンストラクターを使用します。ファイルへのフルパスを指定する必要があります。それ以外の場合、エンジンは現在のディレクトリ( here)で定義されており、おそらく見つけられない可能性があります。それにもかかわらず、ファイルに .tex 1がある場合、拡張子を省略する場合があります。エンジンは自動的に追加されます。コンストラクターの2番目の引数は、 デバイスクラスインスタンスです。ラテックスをPDFに変換しているため、 PDFDeviceクラスインスタンスです。最後の議論として、最近準備された変換オプションに合格します。

私たちが今しなければならないことは、仕事を(19)走ることだけです。

実行が成功したかどうかに関係なく、私たちが見る最初の結果は端子出力になります。成功した場合、それは次のように見えます:

 1This is ObjectTeX, Version 3.1415926-1.0 (Aspose.TeX 21.8)
 2entering extended mode
 3
 4(<input_directory>\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.pdf (1 page).
13Transcript written on hello-world.log.

出力ディレクトリとして指定したフォルダーにエンジンの実行の他の製品があります。これらは、トランスクリプト(.log)ファイルとvoila!、メイン出力PDFファイルになります。

メイン出力PDFファイルを書き込む代替方法

pdfdeviceクラスの別のコンストラクターがあります。これにより、結果のPDFファイルを代替方法で取得できます。

 1// Create the stream to write the PDF file to.
 2final OutputStream pdfStream = new FileOutputStream(Utils.getOutputDirectory() + "any-name.pdf");
 3try {
 4  // Create conversion options for Object LaTeX format upon Object TeX engine extension.
 5  ...
 6    // Run LaTeX to PDF conversion.
 7    new TeXJob(Utils.getInputDirectory() + "hello-world.ltx", new PdfDevice(pdfStream), options).run();
 8} finally {
 9  if (pdfStream != null)
10    pdfStream.close();
11}

指定されたディレクトリの any-name.pdf ファイルは、メインの出力PDFファイルになります。同時に、 画像出力とは異なり、変換オプションで定義された出力ディレクトリにPDFファイルは見つかりません。例外: any-name.pdf は、 outputFilesSystemDirectoryを使用して outputWorkingDirectoryオプションに割り当てられている同じファイルシステムディレクトリに(そのパスで)配置されます。

入力オプションについて

メイン入力ファイルに、基本的なラテックスシステムに含まれておらず、サポートされているパッケージに含まれていないパッケージなどの依存関係が必要な場合は、 rebyputWorkingDirectoryオプションを設定し、そのディレクトリに依存関係を設定し、 rebysputDirectoryオプションを設定する必要があります。依存関係は、サブディレクトリで任意に組織される場合があります。タイプセットプロセス、たとえば外部グラフィックファイルに沿って含める独自のファイルがある場合は、それらのファイルが収集される場所へのパスを使用して inputWorkingDirectoryを設定する必要があります。また、入力ディレクトリ内のどこかにメイン入力ファイルを配置し、 run()メソッドの相対パスを指定することもできます(または、メイン入力ファイルがルートにある場合はパスをまったく指定しません)。 ここは、Java Aspose.TeXの入力ディレクトリの概念の詳細であり、実装を提供しています。

他のTEXジョブオプションについて説明します ここ

.netのAspose.TeXAPIに基づいて構築された無料のLaTex-to-PDF変換 Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.