龙空技术网

可将PDF转为Word文件的Python库

GitHub精选 1566

前言:

眼前兄弟们对“python rgb转cmyk”大概比较注意,我们都想要剖析一些“python rgb转cmyk”的相关内容。那么小编同时在网络上网罗了一些有关“python rgb转cmyk””的相关知识,希望你们能喜欢,小伙伴们一起来学习一下吧!

《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个可将PDF转为Word的Python库——pdf2docx。

基于 PyMuPDF 提取文本、图片、矢量等原始数据基于规则解析章节、段落、表格、图片、文本等布局及样式基于 python-docx 创建Word文档

主要功能

解析和创建页面布局

页边距章节和分栏 (目前最多支持两栏布局)页眉和页脚 [TODO]

解析和创建段落

OCR 文本 [TODO]水平(从左到右)或竖直(自底向上)方向文本字体样式例如字体、字号、粗/斜体、颜色文本样式例如高亮、下划线和删除线列表样式 [TODO]外部超链接段落水平对齐方式 (左/右/居中/分散对齐)及前后间距

解析和创建图片

内联图片灰度 /RGB/CMYK 等颜色空间图片带有透明通道图片浮动图片(衬于文字下方)

解析和创建表格

边框样式例如宽度和颜色单元格背景色合并单元格单元格垂直文本隐藏部分边框线的表格嵌套表格

支持多进程转换

pdf2docx 同时解析出了表格内容和样式,因此也可以作为一个表格内容提取工具。

限制目前暂不支持扫描PDF文字识别仅支持从左向右书写的语言(因此不支持阿拉伯语)不支持旋转的文字基于规则的解析无法保证100%还原PDF样式

示例

安装

$ pip install pdf2docx

更新

$ pip install --upgrade pdf2docx

我们可以使用 Converter类 或包装方法 parse() 将所有/指定的 pdf 页面转换为 docx。如果 pdf 文件包含大量页面,则支持批量处理。

转换所有页面

from pdf2docx import Converterpdf_file = '/path/to/sample.pdf'docx_file = 'path/to/sample.docx'# convert pdf to docxcv = Converter(pdf_file)cv.convert(docx_file)      # all pages by defaultcv.close()

另一种使用 parse() 的方法:

from pdf2docx import parsepdf_file = '/path/to/sample.pdf'docx_file = 'path/to/sample.docx'# convert pdf to docxparse(pdf_file, docx_file)
转换指定页面

指定页面范围 start(如果省略则从第一页开始)和 end(如果省略则到最后一页):

# convert from the second page to the end (by default)cv.convert(docx_file, start=1)# convert from the first page (by default) to the third (end=3, excluded)cv.convert(docx_file, end=3)# convert from the second page and the thirdcv.convert(docx_file, start=1, end=3)

或者,通过以下方式设置单独的页面 pages:

# convert the first, third and 5th pagescv.convert(docx_file, pages=[0,2,4])

-END-

开源协议:GPL-3.0

开源地址:

标签: #python rgb转cmyk #pythondocx字体 #python pdf2 #python批量pdf转word #pdf转word 开源