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

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:

from pdf_craft import PDFPageExtractor, MarkDownWriter
extractor = PDFPageExtractor(device="cpu", model_dir_path="/path/to/model")
with MarkDownWriter(markdown_path, "images", "utf-8") as md:
    for block in extractor.extract(pdf="/path/to/pdf"):
        md.write(block)

3. PDF转EPUB:

from pdf_craft import PDFPageExtractor, LLM, analyse, generate_epub_file
extractor = 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


收藏
最新工具
法大大iTerms
法大大iTerms

法大大推出的一站式法律AI工作台,基于自研法律大模型的AI智能体...

Relume
Relume

一个通过AI来优化网站设计与搭建流程的平台,可以快速生成网站地图...

Pomelli
Pomelli

Google开发的AI营销工具,主要服务中小商家。你只需要提供企...

Gartic.io
Gartic.io

一个很受欢迎的在线绘画猜词游戏。它把经典的“你画我猜”玩法和多人...

LandPPT
LandPPT

一个基于大语言模型的开源免费AIPPT生成平台,支持将文档内容自...

AppleWalls
AppleWalls

一个免费提供苹果官方内置壁纸下载的网站,包括iPhone、iPa...

Coddy.Tech
Coddy.Tech

一个免费、有趣且实用的编程学习平台。支持学习包括 Python、...

森林电台Tree.FM
森林电台Tree.FM

一个能让你收听世界各地森林声音的网站。通过随机收听功能,你可以沉...

Sweezy Cursors
Sweezy Cursors

一个提供免费鼠标光标​​的网站,支持​​Chrome浏览器​​和...

YumCheck
YumCheck

一款能帮用户解析食品包装上的营养成分标签,评估食品是否健康的免费...