使用python将docx转换成pdf,请给出具体的代码例子,并将转换过程封装成函数
时间: 2024-10-25 18:15:45 浏览: 13
在Python中,我们可以使用`python-docx`库读取`.docx`文件,然后使用` ReportLab`库将其转换为`.pdf`格式。下面是一个基本的示例,展示了如何封装这个转换过程到一个函数中:
首先,确保已经安装了所需的库,如果没有,可以使用`pip`安装:
```bash
pip install python-docx reportlab
```
接下来,创建一个名为`convert_docx_to_pdf.py`的文件,添加以下代码:
```python
from docx import Document
from reportlab.pdfgen import canvas
def convert_docx_to_pdf(docx_file_path, pdf_output_path):
# 检查输入文件是否存在
if not os.path.isfile(docx_file_path):
raise FileNotFoundError(f"{docx_file_path} does not exist.")
# 创建Word文档实例
doc = Document(docx_file_path)
# 初始化PDF报告
c = canvas.Canvas(pdf_output_path)
# 遍历Word中的每个段落
for para in doc.paragraphs:
c.drawString(50, 750 - (para.line_num * 20), str(para.text))
# 保存PDF
c.save()
# 使用函数
if __name__ == "__main__":
input_docx = "example.docx" # 输入的.docx文件路径
output_pdf = "output.pdf" # 输出的.pdf文件路径
try:
convert_docx_to_pdf(input_docx, output_pdf)
print(f"Conversion successful! {input_docx} has been converted to {output_pdf}.")
except FileNotFoundError as e:
print(e)
阅读全文