Outras opções de gerenciamento de Tex | Java

Cada exemplo cria TeXOptions para LaTeX e configura uma opção. Passe essas opções a um TeXJob, forneça uma entrada LaTeX adequada e defina um diretório de trabalho de saída antes da execução. Importe com.aspose.tex.TeXOptions, TeXConfig e as classes usadas no exemplo escolhido: Interaction, com.aspose.tex.rendering.XpsSaveOptions ou PdfSaveOptions, e java.util.Calendar/GregorianCalendar para o exemplo de data. Trate ou declare as exceções no método chamador. Os exemplos de rasterização e subconjuntos de fontes usam PdfSaveOptions; renderize com um PdfDevice compatível. Aplique uma licença conforme o guia de licenciamento.

Como definir o modo de interação

Como mencionamos aqui, Aspose.TeX para java nos permite definir o modo de interação inicial no qual o motor inicia. Aqui está como fazemos isso:

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

Como definir o nome do trabalho

Quando passamos o arquivo de entrada principal como um nome de arquivo, obtemos arquivos de saída com o mesmo nome, embora com outras extensões. O mecanismo TEX chama o nome do arquivo de entrada de * nome do trabalho * e o usa para arquivos de saída, exceto nos casos em que os arquivos auxiliares com outros nomes especificados explicitamente são gravados. Quando passamos pelo arquivo de entrada principal como um Stream, o mecanismo TEX usa o nome da tarefa padrão, que é texput. Nos dois casos, podemos substituir o nome do trabalho atribuindo a opção de conversão apropriada.

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

Como “parar o tempo”

O LATEX possui um recurso para gerar automaticamente um título de algumas definições no preâmbulo. Este título normalmente contém a data atual. Podemos querer congelar a data em algum valor desejado. Aqui está como isso pode ser feito:

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

Como ignorar pacotes ausentes

Um arquivo LaTeX pode fazer referência a pacotes indisponíveis na biblioteca Aspose.TeX para Java. O mecanismo normalmente para com um erro ao tentar carregar um desses pacotes. Use ignoreMissingPackages(true) para ignorar pacotes indisponíveis. Isso não fornece os comandos que esses pacotes definiriam; a entrada não deve depender deles.

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

Como evitar a construção de ligaduras

Normalmente, o mecanismo Tex cria ligações para certos pares de caracteres se a fonte fornecer os dados necessários para fazê -lo. Podemos instruir o motor a pular o edifício da ligadura com o seguinte código:

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

Como repetir o trabalho

Como mencionamos acima em relação a rótulos e referências, há casos em que podemos querer executar o mesmo trabalho duas vezes. Aqui está como isso pode ser feito:

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

Como transformar fórmulas de matemática para imagens raster

Às vezes, podemos precisar ter fórmulas matemáticas como imagens rasters, em vez de digitadas em fontes. A opção a seguir pode servir para esse fim:

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

Como transformar gráficos para imagens rasters

O mecanismo ObjectTex nos permite incluir arquivos gráficos nos formatos raster (PNG e JPG), bem como formatos de PS (EPS) e XPS (OXPS). Os dois últimos formatos geralmente contêm elementos e textos vetoriais. Para tê -los rasterizados e incluídos como imagens sólidas, podemos usar a seguinte opção:

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

Como subconjuntar fontes

Os subconjuntos de fontes limitam as fontes incorporadas aos glifos usados no documento. O efeito sobre o tamanho da saída depende da fonte e de como o dispositivo de saída a incorpora. Atribua as opções de salvamento antes de ativar subsetFonts(true), como mostrado abaixo:

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