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.6.2-py3-none-win_amd64.whl (29.1 MB view details)

Uploaded Python 3Windows x86-64

spire_doc-14.6.2-py3-none-manylinux_2_34_x86_64.whl (45.1 MB view details)

Uploaded Python 3manylinux: glibc 2.34+ x86-64

spire_doc-14.6.2-py3-none-manylinux2014_aarch64.whl (25.6 MB view details)

Uploaded Python 3

spire_doc-14.6.2-py3-none-macosx_11_0_arm64.whl (29.5 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

spire_doc-14.6.2-py3-none-macosx_10_7_universal.whl (53.7 MB view details)

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

File details

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

File metadata

  • Download URL: spire_doc-14.6.2-py3-none-win_amd64.whl
  • Upload date:
  • Size: 29.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.6.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 8dcd6ffa365be3d990af92f09418a9055d023b42ccbf2be25fd13596ba84cdba
MD5 6c8b76c1e808653439abc9b10a861981
BLAKE2b-256 b27f20635df28cd1a590ecd6a5ae45c1a54118bc1938642a44dbd463499acfee

See more details on using hashes here.

File details

Details for the file spire_doc-14.6.2-py3-none-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for spire_doc-14.6.2-py3-none-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0fcf5c9a7030da5cf8b4d59ee965d963eeb357a9a7b4fecadb67aeb4662751de
MD5 2bb824350629469021725494be07aca7
BLAKE2b-256 1af44966ab6edc141968015abcccb776574389f5dcc78b4a2c299366477188b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.2-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 db395e18182e399571109edbda46dd54f07f355ae4d66471f24be8ea2edb96d7
MD5 c78ebfb030f0e763618448bf136710ed
BLAKE2b-256 a14ed658173a1025b1860ee2925b7c8970b58f8686618d78789d38ca621aa8cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f4ea508a32ddbe938dab9fd7a394b53263b70ec3767b5729f2980e3494f5fc61
MD5 bbb48389bde566ddaedf68220015595d
BLAKE2b-256 502aec9ea1d8c92e01702d4b20dadfc6e7ce9c71b8a512ebff693c91106a79b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.2-py3-none-macosx_10_7_universal.whl
Algorithm Hash digest
SHA256 1d32bfaf8fa1a46d455268bd93d26dc55dfe76b6342d3498fd03f707a6bfd2f4
MD5 769643b0244f33553331e70a85dda2dd
BLAKE2b-256 6f753e1b8cb6880917b9b68612ed138937371f886941e6479f53819638b113d8

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