LaTeX a XPS | Aspose.TeX per Python
Un altro formato target è xps. Un file xps è essenzialmente un pacchetto zip che contiene un contenuto paginato di un documento, insieme ai metadati necessari per la visualizzazione corretta da parte di specifici telespettatori (come Windows XPS Viewer) e la stampa. Il pacchetto è composto da vari file, alcuni dei quali sono binari e contengono risorse come immagini, caratteri e profili ICC. Altri sono file XML in schemi specifici, inclusi file che contengono i dati del documento stessi. I dati del documento sono divisi in più file, con ciascun file che rappresenta una singola pagina del documento. Questi file sono costituiti da un elemento di singola pagina e un albero di elementi figlio, tra cui tela, percorso e glicfi. L’elemento telaè un elemento di raggruppamento che può contenere altri tele, percorsi e glifi e controlla l’aspetto di tutti gli elementi figlio come gruppo. Path Gli elementi vengono utilizzati per definire i percorsi grafici vettoriali, mentre gli elementi Glifi vengono utilizzati per definire il contenuto testuale. Tutti e tre gli elementi hanno proprietà che definiscono vari aspetti dell’apparenza.
Esiste la libreria Aspose.Page, che offre un’API per manipolare i documenti XPS e consente anche la conversione di questi documenti in formati di immagini PDF e raster.
Convertire il LaTeX in XPS
Il processo di conversione del LaTeX in XPS è ugualmente semplice, simile alla conversione in formati di immagini raster. Tuttavia, richiede l’impostazione di Save_options su un’istanza della classe XPSSaveOptions (per impostazione predefinita o esplicitamente) e cambiando il dispositivo in un’istanza della classe XPSDevice.
1# Create conversion options instance.
2...
3# Initialize the options for saving in XPS format.
4so = XpsSaveOptions()
5options.save_options = so # Default value. Arbitrary assignment.
6# Run LaTeX to XPS conversion.
7TeXJob(path.join(Util.input_directory, "sample.ltx"), XpsDevice(), options).run()
Un modo alternativo per scrivere il file XPS di output principale
È disponibile un costruttore alternativo per la classe * XPSDevice *, che consente di ottenere il file XPS risultante in modo diverso.
1# Create the stream to write the XPS file to.
2with open(path.join(Util.output_directory, "any-name.xps"), "wb") as xps_stream:
3 # Create conversion options for Object LaTeX format upon Object TeX engine extension.
4 options = TeXOptions.console_app_options(TeXConfig.object_latex)
5 # Specify a file system working directory for the output.
6 options.output_working_directory = OutputFileSystemDirectory(Util.output_directory)
7 # Initialize the options for saving in XPS format.
8 options.save_options = XpsSaveOptions() # Default value. Arbitrary assignment.
9 # Run LaTeX to XPS conversion.
10 TeXJob(path.join(Util.input_directory, "hello-world.ltx"), XpsDevice(xps_stream), options).run()
L’effetto è lo stesso che otteniamo qui.
È anche possibile esplorare la conversione gratuita app Web per la latex-xps, che viene sviluppata utilizzando Aspose.TeX per .NET API.