Другие параметры управления TeX | Java

Как установить режим взаимодействия

Как мы упоминали здесь, Aspose.TeX для Java позволяет нам установить начальный режим взаимодействия, в котором запускается движок. Вот как мы это делаем:

1// Create conversion options instance.
2...
3// Set the interaction mode.
4options.setInteraction(Interaction.NonstopMode);

Как задать имя задания

Когда мы передаем основной входной файл в качестве имени файла, мы получаем выходные файлы с тем же именем, но с другими расширениями. Движок TeX называет имя входного файла имя задания и использует его для выходных файлов, за исключением случаев, когда записываются вспомогательные файлы с явно указанными другими именами. Когда мы передаем основной входной файл как поток, движок TeX использует имя задания по умолчанию — texput. В обоих случаях мы можем переопределить имя задания, назначив соответствующий параметр преобразования.

1// Create conversion options instance.
2...
3// Set the job name.
4options.setJobName("my-job-name");

Как «остановить время»

В LaTeX есть функция автоматического создания заголовка на основе некоторых определений в преамбуле. Этот заголовок обычно содержит текущую дату. Возможно, мы захотим заморозить дату в каком-то желаемом значении. Вот как это можно сделать:

1// Create conversion options instance.
2...
3// Force the TeX engine to output the specified date in the title.
4options.setDateTime(new GregorianCalendar(2022, Calendar.DECEMBER, 18).getTime());

Как игнорировать недостающие пакеты

Возможно, мы захотим преобразовать файл LaTeX, который ссылается на некоторые пакеты, которые не поддерживаются библиотекой Aspose.TeX для .NET. В этом случае движок TeX остановится с ошибкой при попытке загрузить такой пакет. Чтобы избежать этого, мы можем использовать следующий вариант:

1// Create conversion options instance.
2...
3// Set to true to make the engine skip missing packages (when your file references one) without errors.
4options.ignoreMissingPackages(true);

Как избежать наращивания лигатур

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

1// Create conversion options instance.
2...
3// Set to true to make the engine not construct ligatures where normally it would.
4options.noLigatures(true);

Как повторить работу

Как мы уже упоминали выше относительно меток и ссылок, бывают случаи, когда нам может потребоваться выполнить одно и то же задание дважды. Вот как это можно сделать:

1// Create conversion options instance.
2...
3// Ask the engine to repeat the job.
4options.repeat(true);

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

Иногда нам может потребоваться иметь математические формулы в виде растровых изображений, а не набирать их шрифтами. Для этой цели может служить следующий вариант:

1// Create conversion options instance.
2...
3// Create and assign saving options instance if needed.
4...
5// Set to true if you want math formulas to be converted to raster images.
6options.getSaveOptions().rasterizeFormulas(true);

Как превратить графику в растровые изображения

Движок ObjectTeX позволяет включать графические файлы в растровых форматах (PNG и JPG), а также в форматах PS(EPS) и XPS(OXPS). Последние два формата обычно содержат векторные элементы и тексты. Чтобы растрировать их и включить в виде сплошных изображений, мы можем использовать следующую опцию:

1// Create conversion options instance.
2...
3// Create and assign saving options instance if needed.
4...
5// Set to true if you want included graphics (if it contains vector elements) to be converted to raster images.
6options.getSaveOptions().rasterizeIncludedGraphics(true);

Как подмножество шрифтов

Если мы хотим уменьшить размер выходного файла, мы можем прибегнуть к поднабору шрифтов, что означает, что шрифты в выходном документе будут содержать только данные о глифах, которые используются в документе. Вот как мы можем это решить:

1// Create conversion options instance.
2...
3// Create and assign saving options instance if needed.
4...
5// Set to true to make the device subset fonts used in the document.
6options.getSaveOptions().subsetFonts(true);
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.