Skip to main content

A 100% standalone Word Python API for Processing Word Files

Project description

Python API for Creating, Reading, Manipulating, and Converting Word Documents

Spire.Doc for Python

Product Page | Documentation | Examples | Forum | Temporary License | Customized Demo

Spire.Doc for Python is a powerful and easy-to-use Word document processing library. It empowers developers to create, read, modify, and convert Word documents in Python applications without the need for Microsoft Word or any other third-party software.

Supported Word Versions

The following are the Word versions supported by Spire.Doc for Python:

  • Word 97-03
  • Word 2007
  • Word 2010
  • Word 2013
  • Word 2016
  • Word 2019

Supported Operating Systems

The following are the operating systems supported by Spire.Doc for Python:

  • Windows
  • Linux
  • MacOS

Key Features of Spire.Doc for Python

Spire.Doc for Python provides a comprehensive set of features for working with various Word formats including DOC, DOCX, DOCM, DOT, DOTX, DOTM, and more.

The following list shows some key features offered by Spire.Doc for Python:

  1. Document Conversion:

  2. Document Creation and Manipulation:

  3. Document Protection:

  4. Mail Merge:

    • Perform Mail Merge in Word
  5. Text Manipulation:

  6. Image and Shape Manipulation:

  7. Table Creation and Manipulation:

  8. Hyperlink Manipulation:

  9. Header and Footer Manipulation:

  10. Watermark Manipulation:

  11. Bookmark Manipulation:

  12. List Manipulation:

  13. Comment Manipulation:

  14. Form Field Manipulation:

  15. Text and Paragraph Formatting:

  16. Page Setup:

  17. Textbox and OLE Manipulation:

  18. Footnote and Endnote Manipulation:

Examples

Create a Word Document from Scratch in Python

The following code shows how to create a Word document from scratch and add content to it using Python and Spire.Doc for Python:

from spire.doc import *	
from spire.doc.common import *

# Create a Document object
doc = Document()

# Add a section
section = doc.AddSection()

# Set the page margins
section.PageSetup.Margins.All = 40

# Add a title
titleParagraph = section.AddParagraph()
titleParagraph.AppendText("Introduction of Spire.Doc for Python")

# Add two paragraphs
bodyParagraph_1 = section.AddParagraph()
bodyParagraph_1.AppendText("Spire.Doc for Python is a professional Python library designed for developers to " +
                           "create, read, write, convert, compare and print Word documents in any Python application " +
                           "with fast and high-quality performance.")

bodyParagraph_2 = section.AddParagraph()
bodyParagraph_2.AppendText("As an independent Word Python API, Spire.Doc for Python doesn't need Microsoft Word to " +
                           "be installed on neither the development nor target systems. However, it can incorporate Microsoft Word " +
                           "document creation capabilities into any developers' Python applications.")

# Apply heading1 to the title
titleParagraph.ApplyStyle(BuiltinStyle.Heading1)

# Create a style for the paragraphs
style2 = ParagraphStyle(doc)
style2.Name = "paraStyle"
style2.CharacterFormat.FontName = "Arial"
style2.CharacterFormat.FontSize = 13
doc.Styles.Add(style2)
bodyParagraph_1.ApplyStyle("paraStyle")
bodyParagraph_2.ApplyStyle("paraStyle")

# Set the horizontal alignment of the paragraphs
titleParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center
bodyParagraph_1.Format.HorizontalAlignment = HorizontalAlignment.Left
bodyParagraph_2.Format.HorizontalAlignment = HorizontalAlignment.Left

# Set the after spacing
titleParagraph.Format.AfterSpacing = 10
bodyParagraph_1.Format.AfterSpacing = 10

# Save to file
doc.SaveToFile("output/WordDocument.docx", FileFormat.Docx2019)

Convert a Word Document to PDF in Python

The following code shows how to convert a Word document to PDF using Python and Spire.Doc for Python:

from spire.doc import *
from spire.doc.common import *

# Create word document
document = Document()

# Load a doc or docx file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

#Save the document to PDF
document.SaveToFile("output/ToPDF.pdf", FileFormat.PDF)
document.Close()

Convert a Word Document to Images in Python

The following code shows how to convert a Word document to images using Python and Spire.Doc for Python:

from spire.doc import *
from spire.doc.common import *

# Create a Document object
document = Document()

# Load a Word file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

# Loop through the pages in the document
for i in range(document.GetPageCount()):

    # Convert a specific page to bitmap image
    imageStream = document.SaveImageToStreams(i, ImageType.Bitmap)

    # Save the bitmap to a PNG file
    with open('Output/ToImage-{0}.png'.format(i),'wb') as imageFile:
        imageFile.write(imageStream.ToArray())

document.Close()

Product Page | Documentation | Examples | Forum | Temporary License | Customized Demo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

spire_doc-14.1.6-py3-none-win_amd64.whl (28.1 MB view details)

Uploaded Python 3Windows x86-64

spire_doc-14.1.6-py3-none-manylinux_2_31_x86_64.whl (43.7 MB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

spire_doc-14.1.6-py3-none-manylinux2014_aarch64.whl (24.7 MB view details)

Uploaded Python 3

spire_doc-14.1.6-py3-none-macosx_11_0_arm64.whl (28.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

spire_doc-14.1.6-py3-none-macosx_10_7_universal.whl (51.9 MB view details)

Uploaded Python 3macOS 10.7+ universal (x86-64, i386, PPC64, PPC)

File details

Details for the file spire_doc-14.1.6-py3-none-win_amd64.whl.

File metadata

  • Download URL: spire_doc-14.1.6-py3-none-win_amd64.whl
  • Upload date:
  • Size: 28.1 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for spire_doc-14.1.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 a92d1cc5da19e419c457f809320cfa66448f11e1aecc2c1dddc9f85367ee4858
MD5 213ee8b6aa9b00229695247f0c653692
BLAKE2b-256 98a44f3fc544a2d90714c755fafb2260782b3c641e38e3371286d2ac6cc0c82e

See more details on using hashes here.

File details

Details for the file spire_doc-14.1.6-py3-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for spire_doc-14.1.6-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 2b17be6427bc6898a27d5acd75de7584146b4b915c96f92b5dbe5eb7cee4245d
MD5 f3622adac7d9d351bc788b84a1577dee
BLAKE2b-256 f1a5356014973e64ad90695be2e6d01c9fa3aa261a836edf035ea5eb87428fe6

See more details on using hashes here.

File details

Details for the file spire_doc-14.1.6-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for spire_doc-14.1.6-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7dbccca05a2bd31d5aeabeff7c023503f5dba39bfb245f3119459358dc37f514
MD5 7b3e78b1bcd2c7badd75ac20ba9577ee
BLAKE2b-256 7e58b76868c7aeb3a98903f690a9181fe9850e8d77fd7c35f9048c6a233d8d5e

See more details on using hashes here.

File details

Details for the file spire_doc-14.1.6-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for spire_doc-14.1.6-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 26e598e25bfcf441f60e3aea29ecf322fff7c70354985981495e2315b74c36d7
MD5 39d9ed90e3118314d934dc1c35a81a09
BLAKE2b-256 ff14adae1cebff00d6a04fad980e749cf29574c7a4e051b89da3b4131d0a59ee

See more details on using hashes here.

File details

Details for the file spire_doc-14.1.6-py3-none-macosx_10_7_universal.whl.

File metadata

File hashes

Hashes for spire_doc-14.1.6-py3-none-macosx_10_7_universal.whl
Algorithm Hash digest
SHA256 9a93d3bbae5c8dccdc8ef1a5a693edcaf29427fd7680a005772d2a00922d5112
MD5 197f1356a757e17679754e5de17d7bab
BLAKE2b-256 266aee061cac96800a5f0e23a85e3c6c4f6d30a05c30c92d430e25ec47be0ea5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page