Criamos documentação técnica e científica usando LaTeX nos formatos TEX ou LTX. Um arquivo LaTeX contém vários comandos para especificar o formato do documento, incluindo texto, símbolos, expressões matemáticas e gráficos. Em certos casos, podemos precisar renderizar ou converter arquivos TeX ou LTX em imagens TIFF programaticamente. Neste artigo, aprenderemos como converter LaTeX para TIFF usando C#.
Os seguintes tópicos serão abordados neste artigo:
- Conversor LaTeX para TIFF – API C#
- Converter LaTeX (TeX) para TIFF em C#
- Converter LaTeX (LTX) para TIFF usando C#
Conversor LaTeX para TIFF – API C#
Para converter arquivos LaTeX em imagens TIFF, usaremos a API Aspose.TeX for .NET. Ele permite a composição de arquivos TeX e apresenta a entrada TeX em vários formatos gráficos como XPS, PDF, PNG, JPEG, TIFF e BMP. Por favor, baixe a DLL da API ou instale-a usando NuGet.
PM> Install-Package Aspose.TeX
Converter LaTeX (TeX) para TIFF em C#
Podemos criar uma imagem TIFF a partir de um arquivo fonte LaTeX (TeX) seguindo os passos abaixo:
- Primeiramente, crie uma instância da classe TeXOptions usando o método ConsoleAppOptions().
- Em seguida, defina a configuração tipográfica do TeX como TeXConfig.ObjectLaTeX.
- Em seguida, defina o diretório de trabalho do sistema de arquivos para a saída.
- Opcionalmente, especifique o console ou o fluxo de memória como um terminal de saída.
- Depois disso, inicialize TiffSaveOptions para salvar no formato TIFF.
- Por fim, chame o método Run() para a classe TexJob recém-criada e salve o TIFF de saída com o objeto de classe ImageDevice.
O exemplo de código a seguir mostra como converter uma fonte LaTeX em um arquivo de saída de imagem TIFF usando C#.
// Este exemplo de código demonstra como criar um TIFF a partir do arquivo de origem do TeX.
// Diretório de trabalho
string dataDir = "D:\\Files\\Tex\\";
// Crie opções de conversão para o formato Object LaTeX na extensão do mecanismo Object TeX.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectLaTeX);
// Especifique o diretório de trabalho do sistema de arquivos para a saída.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);
// Especifique o fluxo de memória como terminal de saída.
options.TerminalOut = new OutputMemoryTerminal();
// Inicialize as opções para salvar no formato TIFF.
options.SaveOptions = new TiffSaveOptions();
// Execute a conversão de LaTeX para TIFF.
new TeXJob(dataDir + "sample.tex", new ImageDevice(), options).Run();
LaTeX (LTX) para TIFF usando C#
O LaTeX também usa uma extensão de arquivo LTX para escrever tags e propriedades de marcação para definir a estrutura e o conteúdo do documento. Também podemos converter a saída do arquivo LaTeX (LTX) em uma imagem TIFF seguindo as etapas mencionadas anteriormente. No entanto, precisamos apenas inserir o arquivo de origem com a extensão .ltx na última etapa.
O exemplo de código a seguir mostra como converter um arquivo de origem LTX em uma imagem TIFF usando C#
// Este exemplo de código demonstra como criar um TIFF do arquivo de origem LTX.
// Diretório de trabalho
string dataDir = "D:\\Files\\Tex\\";
// Crie opções de conversão para o formato Object LaTeX na extensão do mecanismo Object TeX.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectLaTeX);
// Especifique o diretório de trabalho do sistema de arquivos para a saída.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);
// Especifique o fluxo de memória como terminal de saída.
options.TerminalOut = new OutputMemoryTerminal();
// Inicialize as opções para salvar no formato TIFF.
options.SaveOptions = new TiffSaveOptions();
// Execute a conversão de LaTeX para TIFF.
new TeXJob(dataDir + "sample.ltx", new ImageDevice(), options).Run();
Obtenha uma licença gratuita
Você pode avaliar o Aspose.TeX para .NET sem quaisquer limitações obtendo uma licença temporária.
Conclusão
Neste artigo, aprendemos como gerar uma imagem TIFF a partir dos arquivos de origem LaTeX (TeX ou LTX) em C#. Além disso, você pode aprender mais sobre o Aspose.TeX for .NET API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.