Buat PDF dari LaTeX di Jawa

LaTeX banyak digunakan untuk membuat dokumentasi teknis dan ilmiah. File LaTeX (TEX atau LTX) adalah dokumen sumber yang diisi dengan perintah untuk menentukan format dokumen, termasuk teks, simbol, ekspresi matematika, dan grafik. Kita dapat dengan mudah membuat dokumen PDF dari sumber LaTeX secara terprogram. PDF memungkinkan berbagi dokumen dalam format hanya-baca tanpa mengorbankan gaya atau tata letaknya. Pada artikel ini, kita akan mempelajari cara membuat dokumen PDF dari file sumber LaTeX di Java.

Topik-topik berikut akan dibahas dalam artikel ini:

Java API untuk Membuat PDF dari LaTeX

Untuk membuat dokumen PDF dari file sumber LaTeX, kami akan menggunakan API Aspose.TeX for Java. Ini memungkinkan pengaturan huruf file TeX ke berbagai format file seperti PDF, XPS, atau gambar. Harap unduh JAR API atau tambahkan konfigurasi pom.xml berikut dalam aplikasi Java berbasis Maven.

Gudang:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Ketergantungan:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-tex</artifactId>
    <version>21.11</version>
    <type>jar</type>
</dependency>

Buat PDF dari LaTeX TeX File di Java

Kita dapat membuat dokumen PDF dari file LaTeX (TeX) dengan mengikuti langkah-langkah berikut:

  1. Pertama, buat instance kelas TeXOptions menggunakan metode consoleAppOptions().
  2. Tetapkan konfigurasi TeX sebagai TeXConfig.objectLaTeX().
  3. Selanjutnya, atur direktori kerja input dan output.
  4. Kemudian, tentukan konsol atau aliran memori sebagai terminal keluaran.
  5. Setelah itu, atur opsi untuk rendering ke dalam format PDF.
  6. Terakhir, panggil metode run() untuk instance kelas TexJob yang baru dibuat dengan keluaran PDF dan objek kelas PdfDevice sebagai argumen.

Contoh kode berikut menunjukkan cara membuat PDF dari file TeX menggunakan Java.

// Contoh kode ini menunjukkan cara membuat PDF dari file sumber TeX.
// Direktori kerja
String dataDir = "D:\\Files\\Tex\\";

// Buat opsi pengaturan huruf.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// Tentukan direktori kerja sistem file untuk input.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// Tentukan direktori kerja sistem file untuk output.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// Tentukan aliran memori sebagai terminal keluaran.
options.setTerminalOut(new OutputMemoryTerminal());

// Tetapkan opsi untuk merender ke dalam format PDF.
options.setSaveOptions(new PdfSaveOptions());

// Jalankan pengaturan huruf.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();
Buat PDF dari LaTeX TeX File di Java

Buat PDF dari LaTeX TeX File di Java.

Buat PDF dari File LTX di Jawa

LaTeX menggunakan tag markup pengaturan huruf ekstensi file LTX dan properti yang menentukan struktur dan konten dokumen. Kita juga bisa membuat PDF dari file LaTeX (LTX) dengan mengikuti langkah-langkah yang disebutkan sebelumnya. Namun, kita hanya perlu memasukkan file sumber dengan ekstensi .ltx di langkah terakhir.

Contoh kode berikut menunjukkan cara membuat PDF dari file LTX menggunakan Java.

// Contoh kode ini menunjukkan cara membuat PDF dari file sumber LTX.
// Direktori kerja
String dataDir = "D:\\Files\\Tex\\";

// Buat opsi pengaturan huruf.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// Tentukan direktori kerja sistem file untuk input.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// Tentukan direktori kerja sistem file untuk output.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// Tentukan aliran memori sebagai terminal keluaran.
options.setTerminalOut(new OutputMemoryTerminal());

// Tetapkan opsi untuk merender ke dalam format PDF.
options.setSaveOptions(new PdfSaveOptions());

// Jalankan pengaturan huruf.
new TeXJob(dataDir + "sample.ltx", new PdfDevice(), options).run();

Konversikan TeX ke XPS menggunakan Java

Kita juga bisa mengonversi file LaTeX (TeX) ke XPS dengan mengikuti langkah-langkah yang disebutkan sebelumnya. Namun, kita hanya perlu menyetel XpsSaveOptions daripada PdfSaveOptions pada langkah #5.

Contoh kode berikut menunjukkan cara mengonversi TeX ke XPS menggunakan Java.

// Contoh kode ini menunjukkan cara mengonversi Tex ke XPS.
// Direktori kerja
String dataDir = "D:\\Files\\Tex\\";

// Buat opsi pengaturan huruf.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// Tentukan direktori kerja sistem file untuk input.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// Tentukan direktori kerja sistem file untuk output.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// Tentukan aliran memori sebagai terminal keluaran.
options.setTerminalOut(new OutputMemoryTerminal());

// Tetapkan opsi untuk merender ke dalam format XPS.
options.setSaveOptions(new XpsSaveOptions());

// Jalankan pengaturan huruf.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();

Ubah Direktori TeX ZIP menjadi Direktori PDF ZIP menggunakan Java

Kami dapat mengonversi banyak file TeX yang dikompresi dalam arsip ZIP ke PDF sekaligus dengan mengikuti langkah-langkah berikut:

  1. Pertama, buka aliran pada arsip ZIP sebagai direktori kerja input dan output.
  2. Selanjutnya, buat instance kelas TeXOptions menggunakan metode consoleAppOptions().
  3. Kemudian, atur konfigurasi TeX sebagai TeXConfig.objectLaTeX().
  4. Selanjutnya, atur direktori ZIP input dan output.
  5. Kemudian, tentukan konsol atau aliran memori sebagai terminal keluaran.
  6. Setelah itu, atur opsi untuk rendering ke dalam format PDF.
  7. Terakhir, panggil metode run() untuk instance kelas TexJob yang baru dibuat dengan output PDF dan objek kelas PdfDevice sebagai argumen.

Contoh kode berikut menunjukkan cara mengonversi arsip TeX ZIP menjadi arsip PDF ZIP menggunakan Java.

// Contoh kode ini menunjukkan cara mengonversi direktori TeX ZIP ke Direktori PDF ZIP.
// Direktori kerja
String dataDir = "D:\\Files\\Tex\\";

// Buka aliran di arsip ZIP yang akan berfungsi sebagai direktori kerja input.
final InputStream inZipStream = new FileInputStream(dataDir + "files.zip");

// Buka aliran di arsip ZIP yang akan berfungsi sebagai direktori kerja keluaran.
final OutputStream outZipStream = new FileOutputStream(dataDir + "files-out.zip");

try {
    // Buat opsi konversi untuk format ObjectTeX default pada ekstensi mesin ObjectTeX.
    TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

    // Tentukan direktori kerja arsip ZIP untuk input.
    options.setInputWorkingDirectory(new InputZipDirectory(inZipStream, "files"));

    // Tentukan direktori kerja arsip ZIP untuk output.
    options.setOutputWorkingDirectory(new OutputZipDirectory(outZipStream));

    // Tentukan konsol sebagai terminal keluaran.
    options.setTerminalOut(new OutputConsoleTerminal()); // Default. Not necessary to specify.

    // Tentukan opsi penyimpanan.
    options.setSaveOptions(new PdfSaveOptions());

    // Jalankan pekerjaan.
    TeXJob job = new TeXJob("sample", new PdfDevice(), options);
    job.run();

    // Untuk output konsekuen untuk melihat menulis. 
    options.getTerminalOut().getWriter().newLine();

    // Finalisasi keluaran arsip ZIP.
    ((OutputZipDirectory)options.getOutputWorkingDirectory()).finish();
} finally {
  outZipStream.close();
}
Mengonversi arsip TeX ZIP menjadi arsip PDF ZIP

Mengonversi arsip TeX ZIP menjadi arsip PDF ZIP.

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk mencoba perpustakaan tanpa batasan evaluasi.

Kesimpulan

Dalam artikel ini, kita telah mempelajari cara:

  • menghasilkan output PDF dari file sumber LaTeX di Jawa;
  • buat dokumen keluaran XPS dari file TeX secara terprogram;
  • mengonversi arsip TeX ZIP menjadi arsip PDF ZIP menggunakan Java.

Selain itu, Anda dapat mempelajari lebih lanjut tentang Aspose.TeX for Java API menggunakan dokumentasi. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum.

Lihat juga