LaTeX to XPS in .NET - Easy Conversion with Aspose.TeX

Introduction

Are you looking for a seamless way to convert LaTeX documents to XPS format in your .NET applications? Aspose.TeX for .NET provides a powerful solution for this task, making the conversion process simple and efficient. This step-by-step guide will walk you through the process of converting LaTeX to XPS using Aspose.TeX, ensuring you achieve accurate and high-quality results.

Prerequisites

Before diving into the tutorial, ensure you have the following prerequisites in place:

  • A working knowledge of C# and .NET development.
  • Aspose.TeX for .NET library installed. You can download it here.
  • An understanding of LaTeX syntax and structure.

Import Namespaces

Let’s start by importing the necessary namespaces for our .NET application. These namespaces are crucial for interacting with Aspose.TeX functionalities.

using Aspose.TeX.IO;
using Aspose.TeX.Presentation.Xps;
using System.IO;
using System.Text;

Step 1: Set Up Conversion Options

TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectLaTeX);
options.InputWorkingDirectory = new InputFileSystemDirectory("Your Input Directory");

Here, we initialize conversion options and set the input working directory for your LaTeX files.

Step 2: Set Interaction Mode

options.Interaction = Interaction.NonstopMode;

Specify the interaction mode, where we set it to non-stop mode for uninterrupted conversion.

Step 3: Set Job Name (Optional)

// options.JobName = "my-job-name";

You can set a custom job name if needed.

Step 4: Set Date in Title (Optional)

// options.DateTime = new System.DateTime(2022, 12, 18);

Force the TeX engine to output a specific date in the title.

Step 5: Ignore Missing Packages

options.IgnoreMissingPackages = true;

Set to true if you want the engine to skip missing packages without errors.

Step 6: Disable Ligatures

options.NoLigatures = true;

Set to true to prevent the engine from constructing ligatures.

Step 7: Repeat the Job (Optional)

// options.Repeat = true;

Ask the engine to repeat the job if needed.

Step 8: Specify Output Working Directory

options.OutputWorkingDirectory = new OutputFileSystemDirectory("Your Output Directory");

Set the output working directory for the converted XPS files.

Step 9: Initialize Save Options for XPS

options.SaveOptions = new XpsSaveOptions(); // Default value. Arbitrary assignment.

Initialize the options for saving in XPS format.

Step 10: Rasterize Formulas (Optional)

options.SaveOptions.RasterizeFormulas = true;

Set to true if you want math formulas to be converted to raster images.

Step 11: Rasterize Included Graphics (Optional)

options.SaveOptions.RasterizeIncludedGraphics = true;

Set to true if you want included graphics with vector elements to be converted to raster images.

Step 12: Subset Fonts

options.SaveOptions.SubsetFonts = true;

Set to true to make the device subset fonts used in the document.

Step 13: Run LaTeX to XPS Conversion

new TeXJob(Path.Combine("Your Input Directory", "sample.ltx"), new XpsDevice(), options).Run();

Initiate the LaTeX to XPS conversion process.

Step 14: Run LaTeX to XPS Conversion with MemoryStream (Alternative)

// new TeXJob(new MemoryStream(Encoding.ASCII.GetBytes(@"\documentclass{article} \begin{document} Hello, World! \end{document}")),
//     new XpsDevice(), options).Run();

You can also run the conversion using a MemoryStream for input LaTeX content.

Step 15: Run LaTeX to XPS Conversion with Main Input Terminal (Alternative)

// new TeXJob(new XpsDevice(), options).Run();

Run the conversion directly from the main input terminal.

Conclusion

By following these simple steps, you can effortlessly convert LaTeX documents to XPS format using Aspose.TeX for .NET. This powerful library provides flexibility and customization options to meet your specific requirements.

FAQ’s

Q1: Is Aspose.TeX compatible with the latest .NET frameworks?

A1: Yes, Aspose.TeX is regularly updated to ensure compatibility with the latest .NET frameworks.

Q2: Can I customize the output format other than XPS?

A2: Aspose.TeX supports various output formats. Refer to the documentation here for details.

Q3: How do I obtain a temporary license for Aspose.TeX?

A3: You can get a temporary license here.

Q4: Where can I seek assistance or share my experiences with Aspose.TeX?

A4: Visit the Aspose.TeX forum here for community support.

Q5: Are there any sample documents available for testing?

A5: Explore the Aspose.TeX examples here.