Supported Features

Aspose.Words provides users with a wide range of features. Users can perform a huge amount of document-related tasks – from simply converting documents from one supported format to another and modifying those documents during the conversion process to business tasks, such as creating structured and visually appealing documents or automating reporting.

Modern document formats and standards are complex, and when you require document conversion or other document processing features in your project, the only practical solution is often to rely on a third-party component that implements the desired functionality. But using a third-party component always carries some risk. One of the unique risks in document processing is the question about how completely and correctly the library implements a particular document format or standard.

Aspose is committed to delivering the most complete and accurate implementations of document formats and standards. The Aspose.Words team demonstrates their commitment to interoperability by providing detailed implementation notes for supported document formats across multiple platforms.

The tables below summarize and compare the availability of Aspose.Words for Python via .NET features and provide links to detailed feature descriptions.

Supported Platforms

The platforms Aspose.Words for Python via .NET can be used on Windows x64 or x86, macOS x86_x64 or arm64 and wide range of Linux distributions with Python 3.5 or later installed. There are additional requirements to the target Linux and macOS platforms:

  • GCC-6 runtime libraries (or later)
  • Dependencies of .NET Core Runtime. Installing .NET Core Runtime itself is NOT required
  • For Python 3.5-3.7: The pymalloc build of Python is needed. The --with-pymalloc Python build option is enabled by default. Typically, the pymalloc build of Python is marked with m suffix in the filename.
  • libpython shared Python library. The --enable-shared Python build option is disabled by default, some Python distributions do not contain the libpython shared library. For some linux platforms, the libpython shared library can be installed using the package manager, for example: sudo apt-get install libpython3.7. The common issue is that libpython library is installed in a different location than the standard system location for shared libraries. The issue can be fixed by using the Python build options to set alternate library paths when compiling Python, or fixed by creating a symbolic link to the libpython library file in the system standard location for shared libraries. Typically, the libpython shared library file name is libpythonX.Ym.so.1.0 for Python 3.5-3.7, or libpythonX.Y.so.1.0 for Python 3.8 or later (for example: libpython3.7m.so.1.0, libpython3.9.so.1.0).

Supported Linux configurations are presented in Aspose.Words-for-Python-via-.NET/Dockerfile. If you need support for more platforms, look for the “twin brother” products Aspose.Words for .NET or Aspose.Words for Java.

File Formats and Conversions

Many customers worldwide rely on the thorough document import and export features provided by Aspose.Words.

Feature Description Python via .NET
Microsoft Word - DOC The fastest and most complete DOC format implementation you can find. tick
WordprocessingML - DOCX and XML Aspose.Words provides exhaustive support OOXML, Flat OPC and also Word 2003 XML. tick
Rich Text Format - RTF Comprehensive support of the RTF format to interact with a variety of applications. tick
HTML, XHTML and MHTML Load and save HTML/XHTML for even greater interoperability. Save as MHTML is also available. tick
OpenDocument - ODT Aspose.Words can load and save documents in the OpenDocument Text (.odt) format. tick
Adobe Portable Document Format - PDF Convert any document to PDF with high fidelity. PDF/A is supported. tick
XML Paper Specification - XPS Convert any document to XPS with high fidelity. tick
Plain Text - TXT Easily extract text by saving in plain text format. tick
Digital Publishing EPUB EPUB is a popular format for eBooks. You can convert any document from Aspose.Words to the IDPF EPUB format. tick
Printer Command Language (PCL) Aspose.Words for .NET provides support to save document to PCL format. tick

Rendering and Printing

Aspose.Words now provides high fidelity rendering of document pages.

Feature Python via .NET
Layout document into pages with high fidelity (exactly like Microsoft Word® would do that) to all the formats below. tick
Render individual pages or complete documents to PDF or XPS. tick
Render document pages to BMP images tick
Render document pages to images (PNG, EMF, JPEG, GIF). tick
Render individual shapes from the document into raster or vector images. tick
Specify image resolution, quality, compression and other options. tick
Render pages or shapes to a .NET Graphics object with transforms, to a specific size. tick
Print document pages using the .NET printing infrastructure. circle
Update TOC, page numbers and other fields before rendering or printing. tick

Document Content Features

Aspose.Words provides a rich object model that consists of over 100 public classes, which allow you to programmatically generate, combine, modify, parse or otherwise examine loaded documents.

Feature Python via .NET
Access, create and modify paragraphs and text. tick
Access, create and modify images, textboxes and shapes. tick
Access, create and modify tables, rows and cells. tick
Access, create and modify fields, form fields, hyperlinks and bookmarks. tick
Access, create and modify document sections, headers and footers. tick
Access, create and modify footnotes, endnotes and comments. tick
Access, create and modify Custom XML, SmartTags and Structured Document Tags (Content Controls). tick
Access and modify all document elements using XmlDocument -like classes and methods. tick
Update field results IF, formula and other popular field types. tick
Rebuild and update Table Of Contents (TOC) fields exactly like Microsoft Word does it. tick
Copy and move document elements between documents. tick
Join and split documents. tick
Get and set built-in and custom document properties. tick
Specify document protection, open protected and encrypted documents. tick
Find and replace text, enumerate over document content. tick
Accept all revisions in a document. tick
Preserve or extract OLE objects and ActiveX controls from the document. tick
Preserve or remove VBA macros from the document. Preserve VBA macros digital signature. tick
Detect and verify digital signatures in documents. tick
Insert HTML text. tick
Extract VBA Macros from Word Document. tick

Document Formatting Features

Aspose.Words provides detailed programmatic access to the formatting properties of all document elements.

Feature Python via .NET
Access and modify all character formatting including fonts, colors, effects, borders and shading. tick
Access and modify all paragraph formatting including indents, spacing, borders and shading, tab stops. tick
Access and modify all bulleted and numbered lists formatting including numbering and levels. tick
Access and modify table formatting including alignment, orientation, borders and shading. tick
Access and modify all section properties including paper size, margins and orientation. tick
Access, create and modify document styles. tick
Access and modify drawing objects including position, size, line and fill properties, image bytes. tick

Mail Merge Features

You can use Aspose.Words as a reporting solution on its own. Design your reports in Microsoft Word and then have Aspose.Words populate documents with data from various data sources.

Feature Python via .NET
Use all standard Microsoft Word Mail Merge fields in your reports including MERGEFIELD, NEXT, NEXTIF, ADDRESSBLOCK, GREETINGLINE. tick
Execute Mail Merge for documents that contain even the most complex and nested IF fields and formulas. tick
Populate and dynamically grow tables or fragments in the document from your data source using Mail Merge regions. circle
Easily generate reports that contain master-detail (parent-child) data such as Order/OrderDetails. circle
Populate documents with data from any .NET data source such as DataSet, DataTable, DataView, DataReader or ADO Recordset. circle
Populate documents from any data source such as a LINQ query, XML file or business objects by implementing the IMailMergeDataSource interface. circle
Take precise control, such as number formatting, over how your data is merged using events. circle
Insert images during mail merge. tick
Programmatically create or modify a Microsoft Word Mail Merge data source for a document. Preserve Mail Merge settings and data sources. tick
Retrieve Mail Merge field names. tick

Reporting Features

LINQ Reporting Engine is an advanced reporting tool enabling you to generate documents based upon template documents and data obtained from various sources including databases, XML, JSON, OData, objects of custom CLR types, external documents, and more out of the box.

Key Features Python via .NET
Support of C# syntax and LINQ extension methods directly in templates (even for ADO.NET data sources) tick
Support of repeatable and conditional document blocks (loops and conditions) for tables, lists, and common content tick
Support of dynamically generated charts and images tick
Support of insertion of outer documents and HTML blocks into a document tick
Support of multiple data sources (including of different types) for generation of a single document tick
Built-in support of data relations (master-detail) tick
Comprehensive support of various data manipulations such as grouping, sorting, filtering, and others directly in templates tick
WYSIWYG: A generated document retains the same formatting of its elements as a corresponding template has tick