PDF檔案轉換語音輸出

請先安裝 pip install pdfminer.six gtts

`pdfminer.six` 是一个 Python 库,用于从 PDF 文档中提取信息。它是 `PDFMiner` 的一个社区维护版本,专门为 Python 3.x 版本优化。`PDFMiner` 原先是为 Python 2.x 设计的,但随着 Python 2 的逐步淘汰,`pdfminer.six` 应运而生。

`pdfminer.six` 包括多个模块和工具,用于不同方面的 PDF 处理。其中,`extract_text` 函数属于 `pdfminer.high_level` 模块,它提供了一个简单的方式来提取 PDF 文件中的文本内容。这个函数会分析 PDF 文件的布局,识别文本,并尝试保持原有的格式,最终将提取到的文本以字符串的形式返回。

这个库尤其擅长处理复杂的 PDF 布局,包括表格、多列和其他非线性文本布局,它可以提取文字内容供进一步处理,例如文本分析、搜索或转换为语音。

要在您的项目中使用 `pdfminer.six`,您需要先通过 pip 安装它:

```bash
pip install pdfminer.six

然后您就可以在脚本中导入 extract_text 函数,并使用它从 PDF 文件中提取文本了。


```python
from pdfminer.high_level import extract_text
from gtts import gTTS

# 从PDF文件中提取文本
def extract_text_from_pdf(pdf_path):
    return extract_text(pdf_path)

# 将文本转换成语音并保存为MP3文件
def text_to_speech(text, output_file_path, lang='zh-cn'):
    tts = gTTS(text=text, lang=lang, slow=False)
    tts.save(output_file_path)

# 主函数
def main(pdf_file_path, output_mp3_path):
    text = extract_text_from_pdf(pdf_file_path)
    text_to_speech(text, output_mp3_path)
    print(f"转换完成,语音文件已保存到 {output_mp3_path}")

# 指定您的PDF文件和输出的MP3文件名
pdf_file_path = '1111.pdf'
output_mp3_path = '1111.mp3'

# 执行主函数
main(pdf_file_path, output_mp3_path)