Інші параметри керування TeX | Java

Кожен приклад створює TeXOptions для LaTeX і задає один параметр. Передайте ці налаштування в TeXJob, надайте відповідні вхідні дані LaTeX і задайте робочу папку виведення перед запуском завдання. Імпортуйте com.aspose.tex.TeXOptions, TeXConfig і класи з вибраного прикладу: Interaction, com.aspose.tex.rendering.XpsSaveOptions або PdfSaveOptions, а для прикладу дати — java.util.Calendar/GregorianCalendar. Обробляйте або оголошуйте винятки в методі виклику. Приклади растеризації та підмножин шрифтів використовують PdfSaveOptions; виконуйте виведення через сумісний PdfDevice. Застосуйте ліцензію згідно з посібником із ліцензування.

Як встановити режим взаємодії

Як ми згадували тут, Aspose.TeX для Java дозволяє нам встановити початковий режим взаємодії, у якому запускається двигун. Ось як ми це робимо:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.setInteraction(Interaction.NonstopMode);

Як встановити назву роботи

Коли ми передаємо основний вхідний файл як ім’я файлу, ми отримуємо вихідні файли з такою ж назвою, але з іншими розширеннями. Механізм TeX називає ім’я вхідного файлу ім’ям завдання і використовує його для вихідних файлів, за винятком випадків, коли записуються допоміжні файли з явно вказаними іншими іменами. Коли ми передаємо основний вхідний файл як stream, механізм TeX використовує назву завдання за замовчуванням, яка є texput. В обох випадках ми можемо змінити назву завдання, призначивши відповідний параметр перетворення.

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.setJobName("my-job-name");
Example-JobName.java hosted with ❤ by GitHub

Як «зупинити час»

LaTeX має функцію автоматичного створення заголовка з деяких визначень у преамбулі. Цей заголовок зазвичай містить поточну дату. Ми можемо забажати закріпити дату в якомусь бажаному значенні. Ось як це можна зробити:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.setDateTime(new GregorianCalendar(2022, Calendar.DECEMBER, 18).getTime());
Example-DateTime.java hosted with ❤ by GitHub

Як ігнорувати відсутні пакети

Файл LaTeX може посилатися на пакети, недоступні в бібліотеці Aspose.TeX для Java. Зазвичай механізм зупиняється з помилкою під час спроби завантажити такий пакет. Використайте ignoreMissingPackages(true), щоб пропускати недоступні пакети. Це не надає команди, які ці пакети визначають; вхідні дані не мають залежати від таких команд.

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.ignoreMissingPackages(true);

Як уникнути нарощування лігатур

Зазвичай механізм TeX створює лігатури для певних пар символів, якщо шрифт надає дані, необхідні для цього. Ми можемо вказати двигуну пропускати створення лігатури за допомогою такого коду:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.noLigatures(true);
Example-NoLigatures.java hosted with ❤ by GitHub

Як повторити роботу

Як ми згадували вище щодо міток і посилань, бувають випадки, коли ми можемо захотіти виконати ту саму роботу двічі. Ось як це можна зробити:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new XpsSaveOptions());
4options.repeat(true);
Example-Repeat.java hosted with ❤ by GitHub

Як перетворити математичні формули на растрові зображення

Іноді нам може знадобитися мати математичні формули як растрові зображення, а не надруковані шрифтами. Для цього може служити наступний варіант:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new PdfSaveOptions());
4options.getSaveOptions().rasterizeFormulas(true);

Як перетворити графіку на растрові зображення

Механізм ObjectTeX дозволяє нам включати графічні файли в растрових форматах (PNG і JPG), а також у форматах PS(EPS) і XPS(OXPS). Останні два формати зазвичай містять векторні елементи та тексти. Щоб їх растеризувати та включити як суцільні зображення, ми можемо використати такий параметр:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new PdfSaveOptions());
4options.getSaveOptions().rasterizeIncludedGraphics(true);

Як підмножити шрифти

Підмножина шрифту обмежує вбудований шрифт гліфами, використаними в документі. Вплив на розмір виведення залежить від шрифту й способу його вбудовування пристроєм виведення. Задайте параметри збереження перед увімкненням subsetFonts(true), як показано нижче:

1// Configure options, then pass them to a TeXJob with suitable LaTeX input and output.
2TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());
3options.setSaveOptions(new PdfSaveOptions());
4options.getSaveOptions().subsetFonts(true);
Example-SubsetFonts.java hosted with ❤ by GitHub