Welcome to Aspose.Words for Java!
Aspose.Words is a cross-platform class library that enables your application to perform a wide variety of document processing tasks. We call it the Programmable Document Editor.
Using Aspose.Words, you can create, modify, convert, render, and print documents without relying on third-party applications, such as Microsoft Word, or Office Automation.
It is worth noting that you can convert a document from any supported load format to any supported save format, for example, Microsoft Word formats to PDF, HTML, or Markdown, HTML to DOCX, and so on. Read more about converting documents in the “Convert a Document” section.
Another popular option of our library is Reports and Mails. Our users generate highly complex individually adjusted financial, medical, and other Reports. In doing so, the generated document looks like you created the report manually using a regular text editor. Another option, Mail, provides the ability to very quickly generate thousands and millions of simple but still personal template-based documents.
In an effort to make the API as clear and obvious as possible, we decided to recognize and honor the common Java platform development practices. Thus, Aspose.Words for Java follows coding guidelines widely accepted by Java developers.
Benefits of Using Aspose.Words
Using Aspose.Words for Java in your project gives you the following benefits:
- Performance and scalability
- Rich feature set
- Platform independence
- Independence from third-party applications
- Minimal learning curve
The following diagram shows the main features of Aspose.Words for Java and how they relate to each other.
Rich Set of Features
Aspose.Words for Java features can be divided into four main areas.
The ability to easily and reliably convert documents is one of the main features of Aspose.Words.
Document Object Model (DOM)
Programmatic access through a rich API to all document elements and formatting allows to create, modify, extract, copy, split, join, and replace document content. Find out more in the “Aspose.Words Document Object Model (DOM)" section.
We use the term “rendering” in Aspose.Words to describe the process of converting a document into a file format or a medium, paginated or that has the concept of pages.
You can convert whole documents or particular pages to PDF or XPS to generate server-side documents, print them, or render pages. And all this with high fidelity – exactly like Microsoft Word would have done it.
Generate documents or reports from scratch or by filling templates with data from data sources or business objects. For more information on reporting and fetching data from databases, see the “Mail Merge and Reporting” and “LINQ Reporting Engine” sections.
Aspose.Words for Java covers all the Java development environments and deployment platforms. Our API can be used to develop applications for a wide range of operating systems, such as Windows, Linux, Mac OS, Android, and various platforms.
To put it simply, if your platform can run standard Java, it can run Aspose.Words for Java. If your application can call standard Java API, you will have no issues to call Aspose.Words for Java API from your application.
At the moment our baseline is JDK1.7 and newer. But we still support JDK1.6.
We have three different releases based on the same code base:
- Aspose.Words for Java
- Aspose.Words for Android via Java
- Aspose.Words for JasperReports
While the Java and Android releases are compiled for the corresponding platform, Aspose.Words for JasperReports is just a thick wrapper around “ordinal” Aspose.Words for Java. It is just for convenience. You can also manually integrate your JasperReports with Aspose Words – in a specific way that better suits your needs.
Independence from Other Applications
Aspose.Words does not require third-party applications, for example, Microsoft Office, to be installed on the machine in order to work. All Aspose components are completely independent. This makes Aspose.Words a great alternative to automation in terms of security, stability, scalability/speed, price, and features for working with documents and related tasks.
Performance and Scalability
Aspose.Words is designed to perform greatly on both a server or client. Aspose.Words is a single Java jar that can be deployed with any Java application by simply copying it. You can also add the HarfBuzz plugin for advanced Font features if you need it (shipped in a separate jar). Standard Java ImageIO JAI extension can also be added to your platform to support additional ImageIO codecs (no need in modern Java environments).
With Aspose.Words, you can literally generate thousands of documents in minutes, which involves opening a document, modifying content and formatting or populating it with data, and saving it. Even most complex documents are opened and saved on a P4 2.4Ghz 1Gb RAM machine in fractions of a second.
Aspose.Words is multithread safe as long as only one thread works on a document at a time. This is a typical scenario to have one thread working on one document. Different threads can safely work on different documents at the same time.
Minimal Learning Curve
Although there are over 150 public classes and enumerations in Aspose.Words, the learning curve is minimal because the Aspose.Words API has been carefully designed with the following goals in mind:
- Borrow best practices from other well-known APIs such as Microsoft Word Automation
- Borrow best practices from the Java Framework Design Guidelines
- Provide a balance of ease of use and detailed manipulation of document elements
Developers who have previously used Microsoft Word Automation in their projects will find the names and behavior of many classes, methods, and properties familiar.
Document, Paragraph, Bookmark, Range, Section.PageSetup and Paragraph.ParagraphFormat are some of the Aspose.Words classes. At the same time, Aspose.Words is quite different from the Microsoft Word Object Model in that it represents a document as a tree of objects, more like an XML DOM tree. If you have worked with any XML DOM library, you will find it is easy to understand and work with Aspose.Words.
Pricing and Policies
For more information on Aspose.Words technical support, take a look at the support page.