Autres options de gestion de TeX | Java

Chaque exemple crée des TeXOptions pour LaTeX et configure une option. Transmettez ces options à un TeXJob, fournissez une entrée LaTeX appropriée et définissez un répertoire de travail de sortie avant l’exécution. Importez com.aspose.tex.TeXOptions, TeXConfig et les classes utilisées dans l’exemple choisi : Interaction, com.aspose.tex.rendering.XpsSaveOptions ou PdfSaveOptions, et java.util.Calendar/GregorianCalendar pour l’exemple de date. Gérez ou déclarez les exceptions dans la méthode appelante. Les exemples de rastérisation et de sous-ensembles de polices utilisent PdfSaveOptions ; effectuez le rendu avec un PdfDevice compatible. Appliquez une licence conformément au guide des licences.

Comment définir le mode d’interaction

Comme nous l’avons mentionné ici, Aspose.TeX for Java nous permet de définir le mode d’interaction initial dans lequel le moteur démarre. Voici comment nous procédons :

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);

Comment définir le nom du travail

Lorsque nous transmettons le fichier d’entrée principal comme nom de fichier, nous obtenons des fichiers de sortie portant le même nom, mais avec d’autres extensions. Le moteur TeX appelle le nom du fichier d’entrée nom du travail et l’utilise pour les fichiers de sortie, sauf dans les cas où des fichiers auxiliaires avec d’autres noms explicitement spécifiés sont écrits. Lorsque nous transmettons le fichier d’entrée principal en tant que stream, le moteur TeX utilise le nom de travail par défaut, qui est texput. Dans les deux cas, nous pouvons remplacer le nom du travail en attribuant l’option de conversion appropriée.

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

Comment “arrêter le temps”

LaTeX dispose d’une fonctionnalité permettant de générer automatiquement un titre à partir de certaines définitions du préambule. Ce titre contient normalement la date actuelle. Nous souhaiterons peut-être geler la date dans une valeur souhaitée. Voici comment procéder :

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

Comment ignorer les paquets manquants

Un fichier LaTeX peut faire référence à des packages indisponibles dans la bibliothèque Aspose.TeX pour Java. Le moteur s’arrête normalement avec une erreur lorsqu’il tente de charger un tel package. Utilisez ignoreMissingPackages(true) pour ignorer les packages indisponibles. Cela ne fournit pas les commandes que ces packages définiraient ; l’entrée ne doit pas en dépendre.

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);

Comment éviter de construire des ligatures

Normalement, le moteur TeX crée des ligatures pour certaines paires de caractères si la police fournit les données requises pour ce faire. Nous pouvons demander au moteur d’ignorer la construction de ligatures avec le code suivant :

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

Comment répéter le travail

Comme nous l’avons mentionné ci-dessus concernant les étiquettes et les références, il existe des cas où nous pouvons souhaiter exécuter deux fois le même travail. Voici comment procéder :

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

Comment transformer des formules mathématiques en images raster

Parfois, nous pouvons avoir besoin d’avoir des formules mathématiques sous forme d’images raster plutôt que de les saisir dans des polices. L’option suivante peut servir à cet effet :

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);

Comment transformer des graphiques en images raster

Le moteur ObjectTeX nous permet d’inclure des fichiers graphiques aux formats raster (PNG et JPG) ainsi qu’aux formats PS(EPS) et XPS(OXPS). Les deux derniers formats contiennent généralement des éléments vectoriels et des textes. Pour les pixelliser et les inclure sous forme d’images solides, nous pouvons utiliser l’option suivante :

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);

Comment sous-ensembler des polices

Les sous-ensembles de polices limitent les polices incorporées aux glyphes utilisés dans le document. L’effet sur la taille de sortie dépend de la police et de son incorporation par le périphérique de sortie. Affectez les options d’enregistrement avant d’activer subsetFonts(true), comme indiqué ci-dessous :

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