Создать пользовательский формат TeX

Верстка файла TeX в пользовательском формате с помощью C# .NET

 

TeX — это язык программирования, используемый для написания программ для компьютерной системы подготовки документов, которая также называется TeX (движок TeX). Основная цель — помочь в написании математических или технических статей. Язык TeX включает в себя команды для управления процессом верстки, либо путем запуска каких-либо действий, либо путем настройки некоторых внутренних параметров движка. Использование синтаксиса языка TeX может быть более продуктивным, если вы определите макросы и значения параметров для своего удобства. Вы можете поместить эти определения в файл TeX, который будете включать в начало каждого другого файла TeX, содержащего фактические данные документа. Или вы можете избежать этого, сделав дамп внутреннего состояния движка после загрузки определений. Такой бинарный дамп называется файлом формата. Тогда вам нужно будет только указать имя формата (имя файла формата TeX) перед версткой любого файла документа. Движок TeX загрузит такой файл формата гораздо быстрее, чем формат в синтаксисе TeX, так как файлы формата не нужно обрабатывать.

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

  • API Aspose.TeX для .NET, который представляет собой многофункциональный, мощный и простой в использовании API для обработки и конвертации документов для платформы C#.

  • Откройте менеджер пакетов NuGet, найдите Aspose.TeX и установите его. Вы также можете использовать следующую команду в консоли менеджера пакетов:

Package Manager Console Command

PM> Install-Package Aspose.TeX

Шаги по созданию пользовательского файла TeX на C#.

  1. Используя метод ConsoleAppOptions() класса TeXOptions , инициализируйте параметры движка TeX для расширения движка Object TeX в его исходном состоянии (вообще без формата).
  2. Используя класс InputFileSystemDirectory , укажите рабочий каталог файловой системы для входных данных.
  3. Используйте класс OutputFileSystemDirectory для указания рабочего каталога файловой системы для выходных данных.
  4. Создайте файл формата, вызвав метод TeXJob.CreateFormat() . Имя, которое вы указываете в качестве аргумента, должно быть именем вашего файла TeX, содержащего формат. Бинарный файл формата будет иметь то же имя.

Пример кода C#: Создание файла пользовательского формата

using Aspose.TeX.IO;
using Aspose.TeX;
// Create the TeX engine options for no format upon ObjectTeX engine extension.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectIniTeX);
// Specify a file system working directory for the input.
options.InputWorkingDirectory = new InputFileSystemDirectory(RunExamples.InputDirectory);
// Specify a file system working directory for the output.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(RunExamples.OutputDirectory);

// Run the format creation.
TeXJob.CreateFormat("customtex", options);

Шаги по верстке файла TeX в пользовательском формате на C#.

  1. Создайте поставщика формата с помощью класса InputFileSystemDirectory .
  2. Создайте параметры конвертации для вашего пользовательского формата на основе расширения движка Object TeX с помощью метода ConsoleAppOptions() класса TeXOptions .
  3. Укажите входной рабочий каталог, если основной ввод не предоставляется в виде потока. Используйте для этого класс InputFileSystemDirectory .
  4. Укажите рабочий каталог файловой системы для вывода с помощью класса OutputFileSystemDirectory .
  5. Создайте объект класса TeXJob с экземпляром XpsDevice и запустите задание, вызвав метод Run(). Здесь мы также показываем, как передать основной входной файл TeX в виде потока.

Пример кода C#: Верстка файла TeX в пользовательском формате

using Aspose.TeX.IO;
using Aspose.TeX.Presentation.Xps;
using Aspose.TeX.ResourceProviders;
using System.IO;
using System.Text;
// Create the format provider using the file system input working directory.
// We use the project output directory as our custom format file is supposed to be located there.
using (FormatProvider formatProvider =
    new FormatProvider(new InputFileSystemDirectory(RunExamples.OutputDirectory), "customtex"))
{
    // Create conversion options for a custom format upon ObjectTeX engine extension.
    TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX(formatProvider));
    options.JobName = "typeset-with-custom-format";
    // Specify the input working directory. This is not required here as we are providing the main input as a stream.
    // But it is required when the main input has dependencies (e.g. images).
    options.InputWorkingDirectory = new InputFileSystemDirectory(RunExamples.InputDirectory);
    // Specify a file system working directory for the output.
    options.OutputWorkingDirectory = new OutputFileSystemDirectory(RunExamples.OutputDirectory);

    // Run the job.
    new TeXJob(new MemoryStream(Encoding.ASCII.GetBytes(
            "Congratulations! You have successfully typeset this text with your own TeX format!\\end")),
            new XpsDevice(), options).Run();
}



Часто задаваемые вопросы

1. Что такое шаблон LaTeX?

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

2. Как использовать шаблоны LaTeX?

Если вы не используете никакого дополнительного программного обеспечения и шаблон представляет собой просто файл TeX, просто откройте его и приступайте к работе. Только имейте в виду, что вы не сохраняете изменения прямо в этом документе, а используете вместо этого опцию «Сохранить как».

3. Как установить тип документа LaTeX?

Чтобы указать тип документа в LaTeX, например статью, книгу или презентацию, используйте команду \documentclass{...} с одним из поддерживаемых имен классов в фигурных скобках.

4. Как создать собственный формат TeX?

Чтобы создать собственный формат TeX с помощью решения API Aspose.TeX, вы сначала создаете правильные параметры движка TeX. Затем вы указываете рабочий каталог файловой системы для ввода и вывода. И, наконец, вы создаете формат, вызывая метод TeXJob.CreateFormat().

TeX What is TeX File Format

TeX — это система наборки и язык программирования, позволяющая создавать документы высокого качества, особенно с математическими формулами. Файлы *.tex* — обычный текст, который обрабатывается движками TeX (pdfTeX, XeTeX, LuaTeX) и преобразуется в PDF, DVI и другие форматы.