PDF-Craft:一个扫描书籍PDF文件转Markdown/EPUB工具

AI快讯 2025-04-01 17:51更新网络

PDF-Craft是什么?

PDF-Craft是一个用于处理PDF文件的开源项目,专注于将扫描书籍的PDF转换为Markdown或EPUB格式。它通过OCR技术识别文字,并利用ai算法提取文本、过滤页眉页脚等元素,生成结构化内容。支持本地计算和LLM辅助功能,适合学术论文、小册子及长篇书籍的格式转换。

PDF-Craft:一个扫描书籍PDF文件转Markdown/EPUB工具.jpg

PDF-Craft功能特征

格式转换:

支持将PDF转换为Markdown格式,适合论文或小书本。

超过100页的,可结合了本地OCR和云端LLM处理,生成带目录分章节的EPUB。

智能提取:

使用DocLayout-YOLO和自定义算法提取正文,过滤页眉、页脚、脚注、页码等元素。

在跨页时,算法会处理前后文的顺接问题。

OCR识别:

使用OnnxOCR进行文字识别,支持插图、表格和公式的截图,并直接插入到输出文件中。

阅读顺序优化:

通过layoutreader确定符合人类阅读习惯的顺序。

LLM辅助:

在EPUB转换过程中,通过LLM(如DeepSeek)读取注释和引用信息,并在EPUB中呈现。

LLM还能在一定程度上纠正OCR错误。

本地运行:

支持CPU和GPU加速,无需联网即可完成大部分操作。

PDF-Craft应用场景

学术研究:将扫描的学术论文转换为Markdown或EPUB格式,便于编辑和阅读。

电子书制作:将扫描书籍转换为EPUB格式,生成带目录和章节的电子书。

文档处理:提取PDF中的文字和图像,用于进一步编辑或归档。

PDF-Craft:一个扫描书籍PDF文件转Markdown/EPUB工具.webp

PDF-Craft使用方法

1. 安装:需要Python 3.10及以上版本,支持CUDA加速。

2. PDF转Markdown:

frompdf_craftimportPDFPageExtractor,MarkDownWriterextractor=PDFPageExtractor(device="cpu",model_dir_path="/path/to/model")withMarkDownWriter(markdown_path,"images","utf-8")asmd:forblockinextractor.extract(pdf="/path/to/pdf"):md.write(block)

3. PDF转EPUB:

frompdf_craftimportPDFPageExtractor,LLM,analyse,generate_epub_fileextractor=PDFPageExtractor(device="cpu",model_dir_path="/path/to/model")llm=LLM(key="sk-XXXXX",url="https://api.deepseek.com",model="deepseek-chat")analyse(llm=llm,pdf_page_extractor=extractor,pdf_path="/path/to/pdf",analysing_dir_path="/path/to/analysing",output_dir_path="/path/to/output")generate_epub_file(from_dir_path="/path/to/output",epub_file_path="/path/to/output.epub")

github项目:https://github.com/oomol-lab/pdf-craft

相关文章