Un file TeX può contenere testo, simboli o espressioni aritmetiche. Questi sono usati per comporre i documenti e puoi digitare l’input TeX su PDF, XPS e molti altri formati supportati. In questo articolo imparerai come convertire i file TeX in PDF o XPS a livello di codice usando C#. Le sezioni seguenti spiegano l’argomento in dettaglio:
- Convertitore da TeX a PDF o XPS – Installazione dell’API C#
- Converti TeX (LaTeX) in PDF a livello di codice usando C#
- Directory TeX ZIP in PDF Conversione della directory ZIP utilizzando C#
- Converti LaTeX (TeX) in file XPS a livello di codice usando C#
- Ottieni la licenza API gratuita
Convertitore da TeX a PDF o XPS – Installazione dell’API C#
L’API Aspose.TeX for .NET è stata progettata per la composizione di file TeX in diversi formati di file come PDF, XPS o immagini. È possibile configurare rapidamente l’API scaricando il file DLL dalla sezione Download oppure installarlo da NuGet con il seguente comando di installazione:
PM> Install-Package Aspose.TeX
Converti TeX (LaTeX) in PDF a livello di codice usando C#
Puoi convertire TeX in file PDF con i passaggi seguenti:
- Crea opzioni di composizione per il formato predefinito ObjectTeX.
- Specificare la console o il flusso di memoria come terminale di output.
- Imposta le opzioni per il rendering in formato PDF.
- Chiama il costruttore di classe TexJob e salva il PDF di output con l’oggetto di classe PdfDevice.
Il seguente frammento di codice spiega come convertire il file TeX in PDF a livello di codice utilizzando C#:
String dataDir = @"D:\test\";
// Crea opzioni di composizione per il formato ObjectTeX predefinito.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
// Specificare una directory di lavoro del file system per l'input.
options.InputWorkingDirectory = new InputFileSystemDirectory(dataDir);
// Specificare una directory di lavoro del file system per l'output.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);
// Specificare il flusso di memoria come terminale di output.
options.TerminalOut = new OutputMemoryTerminal();
// Imposta le opzioni per il rendering in formato PDF.
options.SaveOptions = new PdfSaveOptions();
// Esegui la composizione.
new TeXJob("hello-world", new PdfDevice(), options);
Gli argomenti passati al costruttore di classe TexJob sono degni di nota qui. Il primo si riferisce al percorso del file TeX di input, il secondo è di tipo Device mentre il terzo si riferisce a TexOptions.
Converti la directory TeX ZIP in una directory ZIP PDF usando C#
Potrebbe essere necessario convertire più file TeX in PDF alla volta. In questi casi, puoi convertire il file TeX in un archivio ZIP in un documento PDF in formato zippato. È necessario seguire i passaggi seguenti:
- Apri flussi su archivi ZIP come directory di lavoro di input e output.
- Crea opzioni di composizione usando l’oggetto classe TeXOptions.
- Crea e specifica le opzioni di salvataggio con PdfSaveOptions.
- Esegui la composizione con il costruttore di classi TexJob.
Il codice seguente elabora come convertire l’archivio TeX ZIP in un archivio PDF ZIP in modo programmatico utilizzando C#:
String dataDir = @"D:\test\";
// Aprire un flusso su un archivio ZIP che fungerà da directory di lavoro di input.
using (Stream inZipStream = File.Open(Path.Combine(dataDir, "zip-in.zip"), FileMode.Open))
// Aprire un flusso su un archivio ZIP che fungerà da directory di lavoro di output.
using (Stream outZipStream = File.Open(Path.Combine(dataDir, "terminal-out-to-zip.zip"), FileMode.Create))
{
// Crea opzioni di composizione per il formato ObjectTeX predefinito sull'estensione del motore ObjectTeX.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
// Specificare il nome del lavoro.
options.JobName = "terminal-output-to-zip";
// Specificare una directory di lavoro dell'archivio ZIP per l'input.
options.InputWorkingDirectory = new InputZipDirectory(inZipStream, "in");
// Specificare una directory di lavoro dell'archivio ZIP per l'output.
options.OutputWorkingDirectory = new OutputZipDirectory(outZipStream);
// Specificare che l'output del terminale deve essere scritto in un file nella directory di lavoro dell'output.
options.TerminalOut = new OutputFileTerminal(options.OutputWorkingDirectory);
// Crea e specifica le opzioni di salvataggio.
options.SaveOptions = new PdfSaveOptions();
// Esegui la composizione.
new TeXJob("hello-world", new PdfDevice(), options);
// Finalizzare l'archivio ZIP di output.
((OutputZipDirectory)options.OutputWorkingDirectory).Finish();
}
Converti TeX (LaTeX) in file XPS a livello di codice usando C#
Puoi convertire TeX in file XPS con i seguenti passaggi:
- Crea opzioni di composizione sull’estensione del motore ObjectTeX.
- Specificare una directory di lavoro del file system per l’input e l’output.
- Converti TeX in XPS eseguendo la composizione con XpsDevice.
Il codice seguente mostra come convertire il file TeX in XPS a livello di codice usando C#:
String dataDir = @"D:\test\";
// Crea opzioni di composizione per il formato ObjectTeX predefinito sull'estensione del motore ObjectTeX.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX());
// Specificare una directory di lavoro del file system per l'input.
options.InputWorkingDirectory = new InputFileSystemDirectory(dataDir);
// Specificare una directory di lavoro del file system per l'output.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(dataDir);
// Specificare la console come terminale di output.
options.TerminalOut = new OutputConsoleTerminal();
// Esegui composizione
new TeXJob("hello-world", new XpsDevice(), options);
Ottieni la licenza API gratuita
Puoi valutare l’API con accesso completo richiedendo una licenza temporanea gratuita.
Conclusione
In questo articolo, hai esplorato come convertire i file TeX in file PDF o XPS a livello di codice usando C#. Inoltre, hai anche imparato come convertire un file TeX in un archivio ZIP e creare una directory ZIP di output. Puoi dare un’occhiata a molte altre funzionalità visitando l’API Documentazione. Non esitare a contattarci al Forum di supporto gratuito in caso di dubbi.