ocr_cut_image.py 981 B

1234567891011121314151617181920212223
  1. from magic_pdf.libs.commons import join_path
  2. from magic_pdf.libs.ocr_content_type import ContentType
  3. from magic_pdf.libs.pdf_image_tools import cut_image
  4. def cut_image_and_table(spans, page, page_id, book_name, save_path, img_s3_client):
  5. """spark环境book_name为pdf_bytes_md5,本地环境会传正常bookname"""
  6. def s3_return_path(type):
  7. return join_path(book_name, type)
  8. def img_save_path(type):
  9. return join_path(save_path, s3_return_path(type))
  10. for span in spans:
  11. span_type = span['type']
  12. if span_type == ContentType.Image:
  13. span['image_path'] = cut_image(span['bbox'], page_id, page, img_save_path('images'), s3_return_path=s3_return_path('images'), img_s3_client=img_s3_client)
  14. elif span_type == ContentType.Table:
  15. span['image_path'] = cut_image(span['bbox'], page_id, page, img_save_path('tables'), s3_return_path=s3_return_path('tables'), img_s3_client=img_s3_client)
  16. return spans