ó
    �®žjh	  ã                   óž   • S SK JrJr  S SKJrJr  S SKJr  S SKJ	r	J
r
  S\S\4S jrS\S\4S	 jrS
S.S\S\\   S\S\S\\\4   S\4S jjrg
)é    )ÚOptionalÚTuple)ÚBoundingBoxÚCoordOrigin)ÚBoundingRectangle)ÚCLIPPED_ORIENTATIONSÚrotate_bounding_boxÚscriptÚreturnc                 óJ   • U S:X  d  U S:X  a  Sn U $ U S:X  a  Sn U $ U S:X  a  Sn U $ )Ú ÚKatakanaÚHiraganaÚJapaneseÚHanÚHanSÚKoreanÚHangul© )r
   s    ÚT/home/mande/repo/quber/.venv/lib/python3.13/site-packages/docling/utils/ocr_utils.pyÚmap_tesseract_scriptr      sF   € à�Ó˜v¨Ó3Øˆð
 €Mð	 
�5‹Øˆð €Mð 
�8Ó	ØˆØ€Mó    Úorientationc                 ó€   • [        U 5      nU[        ;  a   SU  S[        [        5       3n[        U5      eU* nUS-  nU$ )Nz'invalid tesseract document orientation z, expected orientation: ih  )Úintr   ÚsortedÚ
ValueError)r   ÚparsedÚmsgs      r   Úparse_tesseract_orientationr       s\   € ô �Ó€FØÔ)Ó)à5°k°]ð C%Ü%+Ô,@Ó%AÐ$BðDð 	ô ˜‹oÐØˆW€FØ
ˆc�M€FØ€Mr   N)Úoriginal_offsetÚbboxr!   ÚscaleÚim_sizec                ó°  • [        XUS9n[        UR                  U-  UR                  U-  UR                  U-  UR
                  U-  UR                  U-  UR                  U-  UR                  U-  UR                  U-  [        R                  S9	nUGb@  UR                  [        R                  La(  S[        R                  R                   3n[        U5      eUbø  U=R                  UR                  -  sl        U=R                  UR                  -  sl        U=R                  UR                  -  sl        U=R                  UR                  -  sl        U=R                  UR                   -  sl        U=R
                  UR                   -  sl        U=R                  UR                   -  sl        U=R                  UR                   -  sl	        U$ )N)Úangler$   )	Úr_x0Úr_y0Úr_x1Úr_y1Úr_x2Úr_y2Úr_x3Úr_y3Úcoord_originz!expected coordinate origin to be )r	   r   r'   r(   r)   r*   r+   r,   r-   r.   r   ÚTOPLEFTr/   Úvaluer   ÚlÚt)r"   r!   r#   r   r$   Úrectr   s          r   Ú#tesseract_box_to_bounding_rectangler5   &   sm  € ô ˜tÀÑH€DÜØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑØ�Y‰Y˜ÑÜ ×(Ñ(ñ
€Dð Ò"Ø×'Ñ'¬{×/BÑ/BÒBØ5´k×6IÑ6I×6OÑ6OÐ5PÐQˆCÜ˜S“/Ð!ØÑ&Ø�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ�IŠI˜×*Ñ*Ñ*�IØ€Kr   )Útypingr   r   Údocling_core.types.docr   r   Údocling_core.types.doc.pager   Údocling.utils.orientationr   r	   Ústrr   r   r    Úfloatr5   r   r   r   Ú<module>r<      sŠ   ð÷ #ç ;Ý 9ç Oð ð ¨ô ð¨Sð °Sô ð$ .2ò"Ø
ð"ð ˜kÑ*ð"ð ð	"ð
 ð"ð �3˜�8‰_ð"ð ö"r   