Why to Convert XPS to RTF?
XPS (XML Paper Specification) is a page description language developed by Microsoft. It is used to create documents that are independent of application software, hardware, and operating system. XPS documents are similar to PDF documents, but they are not as widely used. RTF (Rich Text Format) is a document file format used by Microsoft products such as Word and Office. It is a popular format for text documents and is supported by many other word processing applications. Converting XPS to RTF allows users to open and edit XPS documents in applications that do not support XPS.
How Aspose.Total Helps for XPS to RTF Conversion?
Aspose.Total for Android Java is a package of APIs that can be used to integrate XPS to RTF conversion feature in mobile apps. It includes two APIs: Aspose.PDF for Android via Java and Aspose.Words for Android Java. Aspose.PDF for Android via Java can be used to convert XPS files to DOC. Aspose.Words for Android Java can then be used to render the DOC file to RTF. This process allows users to open and edit XPS documents in applications that do not support XPS. Aspose.Total for Android Java is a powerful and reliable solution for integrating XPS to RTF conversion feature in mobile apps.
Convert XPS to RTF on Android via Java
Get Started with Android via Java APIs
You can easily use Aspose.Total for Android via Java directly from Maven and install Aspose.PDF for Android via Java and Aspose.Words for Android via Java in your applications.
Alternatively, you can get a ZIP file from downloads .
// load XPS file with an instance of Document class
Document document = new Document("template.xps");
// save XPS as a DOC
document.save("DocOutput.doc", SaveFormat.DOC);
// load DOC with an instance of Document
Document outputDocument = new com.aspose.words.Document("DocOutput.doc");
// call save method while passing SaveFormat.RTF
outputDocument.save("output.rtf", SaveFormat.RTF);
Get XPS File Information on Android via Java
Before converting XPS to RTF, you might need information about the document including author, creation date, keywords, modify date, subject, and title. This information is helpful for the decision making for the conversion process. Using the powerful Aspose.PDF for Android via Java API, you can get all of it. To get file-specific information about a XPS file, first get the DocumentInfo object using getInfo method. Once the DocumentInfo object is retrieved, you can get the values of the individual properties.
// load XPS document
Document doc = new Document("template.xps");
// get document information
DocumentInfo docInfo = doc.getInfo();
// show document information
System.out.println("Author: " + docInfo.getAuthor());
System.out.println("Creation Date: " + docInfo.getCreationDate());
System.out.println("Keywords: " + docInfo.getKeywords());
System.out.println("Modify Date: " + docInfo.getModDate());
System.out.println("Subject: " + docInfo.getSubject());
System.out.println("Title: " + docInfo.getTitle());
Insert Endnotes in RTF Document in Android Apps
Apart from document conversion, you can also add a bunch of other features inside your Android Applications using Aspose.Words for Android via Java API. One of that feature is inserting endnotes and numbering in RTF document. If you want to insert a footnote or an endnote in a RTF document, please use DocumentBuilder.InsertFootnote method. This method inserts a footnote or endnote into the document. EndnoteOptions and FootnoteOptions classes represent numbering options for footnote and endnote.
// load document
Document doc = new Document("input.DOC");
// initialize document builder
DocumentBuilder builder = new DocumentBuilder(doc);
// add text in it
builder.write("Some text");
// insert footnote
builder.insertFootnote(FootnoteType.ENDNOTE, "Endnote text.");
// initialize endnote options
EndnoteOptions option = doc.getEndnoteOptions();
// set restart rule
option.setRestartRule(FootnoteNumberingRule.RESTART_PAGE);
// set position
option.setPosition(EndnotePosition.END_OF_SECTION);
// save the document to disk.
doc.save("output.rtf", SaveFormat.RTF);