イメージへのラテックス| Java
ラテックスをPNGに変換する方法
LaTexをPNG形式に変換する最も簡単な方法を提供する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 PNG format.
6options.setSaveOptions(new PngSaveOptions());
7// Run LaTeX to PNG conversion.
8new TeXJob(Utils.getInputDirectory() + "hello-world.ltx", new ImageDevice(), options).run();
したがって、最初に行う必要があることは(後でわかったように、最初にそうではない場合があります)、 Texoptionsクラスのインスタンスを作成することです。これを行う唯一の静的方法は consoleappoptions()です。そのため、その名前の意味を悩ませないでください。このメソッドは、 TexConfigクラスの ObjectLatex()インスタンスを取得します。この構成は、オブジェクトTex Engineにオブジェクトラテックス形式をロードし、LaTexファイルを受け入れる準備ができるように指示します。オブジェクトラテックス形式は、実際には latex形式にすぎませんが、 オブジェクトTex特定のプリミティブを使用してページメトリックをセットアップすることを除きます。
必要なオプションの最初は outputworkingdirectoryで、TEX出力が記述されるスペースまたはエリアを定義します。 ここは、java for Aspose.TeXの出力ディレクトリの概念の詳細です。この例では、 outputfilesystemdirectoryクラスを使用して、指定されたディレクトリまたはフォルダーに出力を書き込むことができます。
2番目のオプションは、 オブジェクトモデルのターゲット形式への変換を制御する SaveOptionsクラスインスタンスです。ラテックスをPNGに変換しているため、 pngsaveoptionsクラスインスタンスであり、出力画像の解像度を指定できます。
次に、 texjobクラスのインスタンスを作成する必要があります。ファイルシステムに保存されているラテックスファイルを変換したいので、 Thisバージョンのコンストラクターを使用します。ファイルへのフルパスを指定する必要があります。それ以外の場合、エンジンは現在のディレクトリ( here)で定義されており、おそらく見つけられない可能性があります。それにもかかわらず、ファイルに .tex 1がある場合、拡張子を省略する場合があります。エンジンは自動的に追加されます。コンストラクターの2番目の引数は、 デバイスクラスインスタンスです。ラテックスをPNGに変換しているため、 Imagedeviceクラス(サポートされているすべての画像形式に共通)インスタンスです。最後の議論として、最近準備された変換オプションに合格します。
私たちが今しなければならないことは、仕事を(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.png (1 page).
13Transcript written on hello-world.log.
出力ディレクトリとして指定したフォルダーにエンジンの実行の他の製品があります。これらは、トランスクリプト(.log)ファイルとvoila!、メインの出力PNG画像ファイルになります。
メイン出力PNGファイルを書き込む代替方法
画像データをバイト配列の配列として取得する別の方法があり、2番目のディメンションの各配列は別のページの画像データを表します。
1// Create conversion options instance.
2...
3// Initialize the options for saving in PNG format.
4PngSaveOptions saveOptions = new PngSaveOptions();
5// Set this property to instruct the device not to output images as you will access them alternatively.
6saveOptions.deviceWritesImages(false);
7options.setSaveOptions(saveOptions);
8// Create the image device.
9ImageDevice device = new ImageDevice();
10// Run LaTeX to PNG conversion.
11new TeXJob(Utils.getInputDirectory() + "hello-world.ltx", device, options).run();
12
13// Save pages file by file.
14for (int i = 0; i < device.getResult().length; i++)
15{
16 final OutputStream fs = new FileOutputStream(Utils.getOutputDirectory() + MessageFormat.format("page-{0}.png", (i + 1)));
17 try {
18 fs.write(device.getResult()[i], 0, device.getResult()[i].length);
19 } finally {
20 if (fs != null)
21 fs.close();
22 }
23}
- “page-n.png” *ファイルは、指定する任意のパスに書き込まれます。 PDF出力とは異なり、それらは出力ディレクトリに書き込まれた出力PNGファイルを複製します。
入力オプションについて
メイン入力ファイルに、基本的なラテックスシステムに含まれておらず、サポートされているパッケージに含まれていないパッケージなどの依存関係が必要な場合は、
RequiredInputDirectoryオプションを設定する必要があります。依存関係は、サブディレクトリで任意に組織される場合があります。タイプセットプロセス、たとえば外部グラフィックファイルに沿って含める独自のファイルがある場合は、それらのファイルが収集される場所へのパスを使用して
inputWorkingDirectoryを設定する必要があります。また、入力ディレクトリ内のどこかにメイン入力ファイルを配置し、 run()
メソッドの相対パスを指定することもできます(または、メイン入力ファイルがルートにある場合はパスをまったく指定しません)。
ここは、Java の Aspose.TeXの入力ディレクトリの概念の詳細であり、実装を提供しています。
他のTEXジョブオプションについて説明します ここ。
.NETのAsops.TexAPIに基づいて構築された無料のLaTex-to-PNG変換 Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。
以下では、他のサポートされているラスター画像形式へのラテックス変換について説明します。実際には詳細がないからといって、詳細には触れません。唯一の違いは、変換オプションの SaveOptionsプロパティのタイプです。
ラテックスをJPGに変換する方法
1// Create conversion options instance.
2...
3// Initialize the options for saving in JPEG format.
4options.SaveOptions = new JpegSaveOptions();
.NETのAspose.TeXAPIに基づいて構築された無料のLaTex-to-JPGコンバージョン Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。
ラテックスをTIFFに変換する方法
1// Create conversion options instance.
2...
3// Initialize the options for saving in TIFF format.
4options.SaveOptions = new TiffSaveOptions();
.netのAspose.TeXAPIに基づいて構築された無料のラテックス間変換 Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。
ラテックスをBMPに変換する方法
1// Create conversion options instance.
2...
3// Initialize the options for saving in BMP format.
4options.SaveOptions = new BmpSaveOptions();
.NETのasops.texAPIに基づいて構築された無料のラテックスからBMPへの変換 Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。
ラテックスをSVGに変換する方法
さらにサポートされているターゲット形式は svgです。 **Scalable Vector Graphics(SVG)**は、対話性とアニメーションをサポートする2次元グラフィックを定義するためのXMLベースのベクトル画像形式です。
SVG画像はベクトルグラフィック形式で定義され、XMLテキストファイルに保存されます。これは、svg画像の品質を失うことなくサイズをスケーリングできることを意味し、svgファイルを検索、インデックス作成、スクリプト化、および圧縮できます。 XMLテキストファイルは、テキストエディターまたはベクトルグラフィックスエディターで作成および編集できます。 Thayは、最も使用されているWebブラウザーによってレンダリングされます。
また、svg形式に基づいてさまざまな機能を備えた aspose.svgライブラリがあります。これらには、svgドキュメントの作成、読み込み、編集、変換が含まれます。
SVGへの変換は、 saveoptionsに加えて、 SVGDeviceクラスのインスタンスにデバイスを変更する必要があることを除いて、 ラスター画像形式への変換と同じくらい簡単です。
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 SVG format.
6options.setSaveOptions(new SvgSaveOptions());
7// Run LaTeX to SVG conversion.
8new TeXJob(Utils.getInputDirectory() + "hello-world.ltx", new SvgDevice(), options).run();
.NETのasops.texに基づいて構築された無料のラテックスからSVGへの変換 Webアプリをチェックアウトすることもできます。 ここはJavaバージョンページです。