Otras opciones de gestión de TeX | .NET

Cómo configurar el modo de interacción

Como mencionamos aquí, Aspose.TeX para .NET nos permite configurar el modo de interacción inicial en el que se inicia el motor. Así es como lo hacemos:

1// How to set the interaction mode
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Set the interaction mode.
7options.Interaction = Interaction.NonstopMode;

Cómo configurar el nombre del trabajo

Cuando pasamos el archivo de entrada principal como nombre de archivo, obtenemos archivos de salida con el mismo nombre, aunque con otras extensiones. El motor TeX llama al nombre del archivo de entrada nombre del trabajo y lo utiliza para los archivos de salida, excepto en los casos en que se escriben archivos auxiliares con otros nombres especificados explícitamente. Cuando pasamos el archivo de entrada principal como flujo, el motor TeX usa el nombre de trabajo predeterminado, que es texput. En ambos casos, podemos anular el nombre del trabajo asignando la opción de conversión adecuada.

1// How to set the job name
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Set the job name.
7options.JobName = "my-job-name";
Example-JobName.cs hosted with ❤ by GitHub

Cómo “detener el tiempo”

LaTeX tiene una función para generar automáticamente un título a partir de algunas definiciones del preámbulo. Este título normalmente contiene la fecha actual. Es posible que deseemos congelar la fecha en algún valor deseado. Así es como se puede hacer:

1// How to "stop time"
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Force the TeX engine to output the specified date in the title.
7options.DateTime = new System.DateTime(2022, 12, 18);
Example-DateTime.cs hosted with ❤ by GitHub

Cómo ignorar paquetes faltantes

Es posible que queramos convertir un archivo LaTeX que haga referencia a algunos paquetes que no son compatibles con la biblioteca Aspose.TeX para .NET. En este caso, el motor TeX se detendrá con un error al intentar cargar dicho paquete. Para evitar esto, podemos utilizar la siguiente opción:

1// How to ignore missing packages
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Set to true to make the engine skip missing packages (when your file references one) without errors.
7options.IgnoreMissingPackages = true;

Cómo evitar la construcción de ligaduras

Normalmente, el motor TeX crea ligaduras para ciertos pares de caracteres si la fuente proporciona los datos necesarios para hacerlo. Podemos indicarle al motor que omita la creación de ligaduras con el siguiente código:

1// How to avoid building ligatures
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Set to true to make the engine not construct ligatures where normally it would.
7options.NoLigatures = true;
Example-NoLigatures.cs hosted with ❤ by GitHub

Cómo repetir el trabajo

Como mencionamos arriba con respecto a las etiquetas y referencias, hay casos en los que nos gustaría ejecutar el mismo trabajo dos veces. Así es como se puede hacer:

1// How to repeat the job
2
3// Create conversion options instance.
4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
5// ...
6// Ask the engine to repeat the job.
7options.Repeat = true;
Example-Repeat.cs hosted with ❤ by GitHub

Cómo convertir fórmulas matemáticas en imágenes rasterizadas

A veces es posible que necesitemos tener fórmulas matemáticas como imágenes rasterizadas en lugar de fuentes escritas. Para ello puede servir la siguiente opción:

 1// How to turn math formulas to raster images
 2
 3// Create conversion options instance.
 4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
 5// ...
 6// Create and assign saving options instance if needed.
 7options.SaveOptions = new PdfSaveOptions();
 8// ...
 9// Set to true if you want math formulas to be converted to raster images.
10options.SaveOptions.RasterizeFormulas = true;

Cómo convertir gráficos en imágenes rasterizadas

El motor ObjectTeX nos permite incluir archivos gráficos en formatos rasterizados (PNG y JPG) así como en formatos PS(EPS) y XPS(OXPS). Los dos últimos formatos suelen contener elementos vectoriales y textos. Para tenerlas rasterizadas e incluidas como imágenes sólidas podemos utilizar la siguiente opción:

 1// How to turn graphics to raster images
 2
 3// Create conversion options instance.
 4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
 5// ...
 6// Create and assign saving options instance if needed.
 7options.SaveOptions = new PdfSaveOptions();
 8// ...
 9// Set to true if you want included graphics (if it contains vector elements) to be converted to raster images.
10options.SaveOptions.RasterizeIncludedGraphics = true;

Cómo subconjuntos de fuentes

En caso de que queramos reducir el tamaño del archivo de salida, podemos recurrir al subconjunto de fuentes, lo que significa que las fuentes en el documento de salida solo contendrán datos sobre los glifos que se utilizan en el documento. Así es como podemos resolver esto:

 1// How to subset fonts
 2
 3// Create conversion options instance.
 4TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
 5// ...
 6// Create and assign saving options instance if needed.
 7options.SaveOptions = new PdfSaveOptions();
 8// ...
 9// Set to true to make the device subset fonts used in the document.
10options.SaveOptions.SubsetFonts = true;
Example-SubsetFonts.cs hosted with ❤ by GitHub

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.