用python将图片转为word文档

您所在的位置:网站首页 如何将照片转成文档 用python将图片转为word文档

用python将图片转为word文档

2024-07-10 14:05| 来源: 网络整理| 查看: 265

昨天突发需求要打印一张图片上的文档,图片拍太昏暗,完全不具有可读性,于是想试试转为word文档,编辑以后再打印,百度了一下,找到了一个大神的文档”使用python在实现图片(包括扫描件的图片类pdf)转换成word文档过程中的常见问题_py617的博客-CSDN博客_python 图片转word“,根据这个文档,基本搞定了需求,但不知道是图片太模糊还是没使用什么高级设置,总之对导出的文档还是得作一些编辑工作才能使用。

根据原文档操作的话,基本框架就有了,但还需要处理一些报错,于是将我的一些处理记录下来,写一篇文章存档:

一、安装必要的工具和库:

1、Python      建议安装3.7或以上版本(我自己安装的是3.8版本,pycharm和anaconda3)

2、tesseract-ocr      这个一定要装,基本算是整个项目的核心工具了,下载地址: https://github.com/UB-Mannheim/tesseract/wiki ,安装最新版本

3、库支持:(如果下载较慢,可以在命令后用-i加入临时国内源,如 -i https://pypi.tuna.tsinghua.edu.cn/simple)

        pip install pillow

        pip install opencv-python

        pip install fitz

        pip install PyMuPDF

        pip install pytesseract

        pip install python-docx

二、可运行的简单代码:

import os import pytesseract import cv2 as cv import fitz from PIL import Image from PIL import ImageFile import docx from docx.oxml.ns import qn

ImageFile.LOAD_TRUNCATED_IMAGES = True Image.MAX_IMAGE_PIXELS = None

text = pytesseract.image_to_string(Image.open(r"F:/png2word/test.png"), lang='chi_sim+eng')

doc = docx.Document()        # 创建一个新的word文档 doc.add_paragraph(text)     # 往文档里添加识别出来的文字 doc.add_page_break()        # 添加分页符,等于在word里按多了一次Ctrl+Enter

# 下面两行设置了文档字体全篇为宋体,缺一行不可 doc.styles['Normal'].font.name = u'宋体' doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')

doc.save(os.getcwd() + '\\test.docx')  # 保存文档

三、结语:

花了一个小时,装好了缺失的工具和库以后,只能说基本可以用了,感谢

py617大神和度娘!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3