图片OCR转PDF
是什么:从图片中识别文字并生成可搜索的PDF文档。
为什么:将图片中的文字转换为可编辑、可搜索的PDF文件。
Python 示例
python
import pytesseract
from PIL import Image
from pdf2image import convert_from_path
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter
import io
def image_ocr_to_pdf(image_path, output_pdf="ocr_output.pdf"):
"""图片OCR识别并生成可搜索的PDF"""
# 1. OCR识别文字和位置
image = Image.open(image_path)
data = pytesseract.image_to_data(image, output_type=pytesseract.Output.DICT)
# 2. 创建PDF
c = canvas.Canvas(output_pdf, pagesize=image.size)
# 3. 在PDF中添加识别到的文字(透明)
for i, text in enumerate(data['text']):
if text.strip(): # 只处理非空文字
x = data['left'][i]
y = image.size[1] - data['top'][i] - data['height'][i] # 坐标转换
c.drawString(x, y, text)
c.save()
print(f"OCR转PDF完成: {output_pdf}")
# 使用示例
image_ocr_to_pdf("document_image.jpg", "searchable_document.pdf")
安装依赖:
bash
pip install pytesseract pillow reportlab pdf2image # 还需安装 Tesseract-OCR
一句话总结:通过OCR识别图片中的文字和位置,在PDF中重建文本层,生成可搜索和选择的PDF文档。