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

Uploaded Python 3Windows x86-64

spire_doc-14.6.1-py3-none-manylinux_2_34_x86_64.whl (45.0 MB view details)

Uploaded Python 3manylinux: glibc 2.34+ x86-64

spire_doc-14.6.1-py3-none-manylinux2014_aarch64.whl (25.5 MB view details)

Uploaded Python 3

spire_doc-14.6.1-py3-none-macosx_11_0_arm64.whl (29.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

spire_doc-14.6.1-py3-none-macosx_10_7_universal.whl (53.6 MB view details)

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

File details

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

File metadata

  • Download URL: spire_doc-14.6.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 29.0 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.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 4aa0ade03d7f15307473070c21c0c4462b3a3448c44441b65272e117d5dcfeae
MD5 73fc483f7d9f46220458b7a83212a01f
BLAKE2b-256 96527f1f73f21e776ba00cf5fe88adb57fba68e9a8440b5493adb9f01e920a91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.1-py3-none-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 585b504de8af7470a0d61a8455f3d0896cbe0e72d09c9973e449298d0b30b84e
MD5 d45c0be8704c490a668944186a1af42e
BLAKE2b-256 efb103a97dd1299b47486a18535656f71a158ce54881a2dc1e3f0e5246093c7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.1-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ab1eb27b1dd6f7ca51303f41b38d31c9953276c79ce33a2389aa5848744371a1
MD5 9c7f1ab8901379a38d22a19b49711d94
BLAKE2b-256 88fafd69b6edd40fe866b361dde19e20da7c1adb317ae973498b1bf489e57776

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a67c52825676455dc84f35cebf33424640d3f54bb0db1ecd6eb6237d563fd785
MD5 cb55324585f99f0e27dcd771d190add5
BLAKE2b-256 33dd64df74f4765836789f09fb01fef826d5e0c07c68c4d123209944dcb00f0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spire_doc-14.6.1-py3-none-macosx_10_7_universal.whl
Algorithm Hash digest
SHA256 b4ca30eaffff2c8b4ca52801583b7fab6844a531c66bc8c00d579c25b4bd7e9a
MD5 4b14e0fe38024299cff8bc4c27dfcc5c
BLAKE2b-256 69c1084132d8aae24c4879b0e8f8c77678ede4b08321923c20162d2ab2434cbe

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