Convert docx to pdf on Windows or macOS directly using Microsoft Word (must be installed).
On Windows, this is implemented via win32com while on macOS this is implemented via JXA (Javascript for Automation, aka AppleScript in JS).
On macOS:
brew install aljohri/-/docx2pdf
Via pipx:
pipx install docx2pdf
Via pip:
pip install docx2pdf
usage: docx2pdf [-h] [--keep-active] [--version] input [output]
Example Usage:
Convert single docx file in-place from myfile.docx to myfile.pdf:
docx2pdf myfile.docx
Batch convert docx folder in-place. Output PDFs will go in the same folder:
docx2pdf myfolder/
Convert single docx file with explicit output filepath:
docx2pdf input.docx output.pdf
Convert single docx file and output to a different explicit folder:
docx2pdf input.docx output_dir/
Batch convert docx folder. Output PDFs will go to a different explicit folder:
docx2pdf input_dir/ output_dir/
positional arguments:
input input file or folder. batch converts entire folder or convert
single file
output output file or folder
optional arguments:
-h, --help show this help message and exit
--keep-active prevent closing word after conversion
--version display version and exit
from docx2pdf import convert
convert("input.docx")
convert("input.docx", "output.pdf")
convert("my_docx_folder/")
See CLI docs above (or in docx2pdf --help) for all the different invocations. It is the same for the CLI and python library.
If you are using this in the context of jupyter notebook, you will need ipywidgets for the tqdm progress bar to render properly.
pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
269 followers · starred Jun 2026
175 followers · starred May 2020
397 followers · starred Mar 2024
207 followers · starred Jul 2020
Convert docx to pdf on Windows or macOS directly using Microsoft Word (must be installed).
On Windows, this is implemented via win32com while on macOS this is implemented via JXA (Javascript for Automation, aka AppleScript in JS).
On macOS:
brew install aljohri/-/docx2pdf
Via pipx:
pipx install docx2pdf
Via pip:
pip install docx2pdf
usage: docx2pdf [-h] [--keep-active] [--version] input [output]
Example Usage:
Convert single docx file in-place from myfile.docx to myfile.pdf:
docx2pdf myfile.docx
Batch convert docx folder in-place. Output PDFs will go in the same folder:
docx2pdf myfolder/
Convert single docx file with explicit output filepath:
docx2pdf input.docx output.pdf
Convert single docx file and output to a different explicit folder:
docx2pdf input.docx output_dir/
Batch convert docx folder. Output PDFs will go to a different explicit folder:
docx2pdf input_dir/ output_dir/
positional arguments:
input input file or folder. batch converts entire folder or convert
single file
output output file or folder
optional arguments:
-h, --help show this help message and exit
--keep-active prevent closing word after conversion
--version display version and exit
from docx2pdf import convert
convert("input.docx")
convert("input.docx", "output.pdf")
convert("my_docx_folder/")
See CLI docs above (or in docx2pdf --help) for all the different invocations. It is the same for the CLI and python library.
If you are using this in the context of jupyter notebook, you will need ipywidgets for the tqdm progress bar to render properly.
pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
269 followers · starred Jun 2026
175 followers · starred May 2020
397 followers · starred Mar 2024
207 followers · starred Jul 2020