LaTeX a XPS | .NET

Un altro formato target è xps. Un file XPS è fisicamente un pacchetto zip che contiene contenuto paginato di un documento, insieme ai metadati richiesti per la visualizzazione corretta da specifici telespettatori (come Windows XPS Viewer) e la stampa. Tutti i dati in un pacchetto sono rappresentati dai file. Alcuni di essi sono binari e contengono risorse come immagini, caratteri e profili ICC. Altri sono file XML in vari schemi specifici. Quest’ultimo include file che contengono i dati del documento stesso. I dati del documento sono costituiti da un set di file: ogni file contiene dati per una singola pagina del documento. Tali file sono costituiti da un singolo elemento di pagina e un albero di elementi figlio - tela, percorso e glicfi. Canvasè un elemento di raggruppamento che può contenere altretele,percorsi e glicfi. Serve a controllare l’aspetto di tutti gli elementi figlio come gruppo. Path Gli elementi vengono utilizzati per definire percorsi grafici vettoriali. E gli elementi glifi vengono utilizzati per definire il contenuto testuale. Tutti e tre gli elementi hanno proprietà per definire vari aspetti dell’apparenza.

Esiste la libreria Aspose.Page che fornisce un’API per manipolare i documenti XPS, oltre a convertirli in formati di immagini PDF e raster.

Come convertire il LaTeX in XPS

La conversione da LaTeX a XPS è semplice quanto la conversione in formati di immagini raster, tranne per il fatto che i SaveOptions devono essere impostati su un’istanza di classe XPSSaveOptions (per impostazione predefinita o esplicitamente) e il dispositivo deve essere modificato in un’istanza della classe XPSDEVICE.

929 / 5,000 Esempio di conversione più semplice

L’esempio seguente mostra come convertire un file LaTeX in XPS in pochi passaggi:

  1. Creare un’istanza di TexDocument.
  2. Caricare il file sorgente .tex utilizzando TexDocument.Load.
  3. (Facoltativo) Configurare XpsSaveOptions, ad esempio le impostazioni di compressione.
  4. Salvare il documento in XPS chiamando document.Save con un XpsDevice.

Questo codice illustra il modo più diretto per produrre un file XPS da LaTeX.

1// Create conversion options instance.
2...
3// Initialize the options for saving in XPS format.
4options.SaveOptions = new XpsSaveOptions(); // Default value. Arbitrary assignment.
5// Run LaTeX to XPS conversion.
6new TeXJob(Path.Combine(RunExamples.InputDirectory, "sample.ltx"), new XpsDevice(), options).Run();

Un modo alternativo per scrivere il file XPS di output principale

C’è un altro costruttore della classe XPSDevice, che ci consente di ottenere il file XPS risultante in modo alternativo.

Esempio di conversione alternativo

Questo frammento di codice illustra l’utilizzo del costruttore XpsDevice che accetta un Stream. I passaggi sono:

  1. Creare un TexDocument e caricare il sorgente LaTeX.
  2. Creare un MemoryStream per contenere l’output XPS. 3. Istanziare XpsDevice con il flusso.
  3. Salvare il documento sul dispositivo, quindi utilizzare il flusso (ad esempio, inviarlo tramite una rete o memorizzarlo in un database).

Questo approccio è utile quando si necessitano i dati XPS in memoria anziché come file su disco.

 1// Create the stream to write the XPS file to.
 2using (Stream xpsStream = File.Open(Path.Combine(RunExamples.OutputDirectory, "any-name.xps"), FileMode.Create))
 3{
 4    // Create conversion options for Object LaTeX format upon Object TeX engine extension.
 5    ...
 6    // Initialize the options for saving in XPS format.
 7    options.SaveOptions = new XpsSaveOptions(); // Default value. Arbitrary assignment.
 8    // Run LaTeX to XPS conversion.
 9    new TeXJob(Path.Combine(RunExamples.InputDirectory, "hello-world.ltx"), new XpsDevice(xpsStream), options).Run();
10}

L’effetto è lo stesso che otteniamo qui.

È inoltre possibile controllare la conversione gratuita Latex-to-XPS app Web basata su Aspose.TeX per API .NET.

Have any questions about Aspose.TeX?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.