§
    `Ò³g42  ã                   óö  — d dl Z d dlZd dlZd dlZd dlmZ d dlZd dlm	Z
 	 d dlZn# e$ r dZY nw xY wd dlmZ d dlmZ d dlmZ d dlmZmZmZmZ  ej        e¦  «        Zd„ Z eej         j!        ej         j"         ej#        ej         j"        d¬¦  «        e¬¦  «        Z$dZ% ed	d
e&¬¦  «        Z' edddd¬¦  «        Z(d„ Z) G d„ d¦  «        Z* G d„ de*¦  «        Z+ G d„ de*¦  «        Z,d„ Z-d„ Z.d„ Z/d„ Z0dS )é    N)ÚPath)Ú	add_inputÚ	get_inputÚsetup_loggingÚBooleanOptionalActionc                 óÌ   — |t           j        k    rd}n6|t           j        k    rd}n#t          dt          j        |         › d�¦  «        ‚t          j        j        | ||g|¢R i |¤ŽS )NFTz5Cannot create foreign_simple bitmap with bitmap type ú.)	Úpdfium_rÚFPDFBitmap_BGRxÚFPDFBitmap_BGRAÚRuntimeErrorÚpdfium_iÚBitmapTypeToStrÚpdfiumÚ	PdfBitmapÚnew_foreign_simple)ÚwidthÚheightÚformatÚargsÚkwargsÚ	use_alphas         úS/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pypdfium2/_cli/render.pyÚ_bitmap_wrapper_foreign_simpler      sy   € Ø•Ô)Ò)Ð)Øˆ	ˆ	Ø	•8Ô+Ò	+Ð	+Øˆ	ˆ	åÐvÕS[ÔSkÐlrÔSsÐvÐvÐvÑwÔwÐwÝÔÔ.¨u°f¸iÐYÈ$ÐYÐYÐYÐRXÐYÐYÐYó    T)Úforce_packed)ÚnativeÚforeignÚforeign_packedÚforeign_simple)Ú	path_fillÚpath_strokeÚ	text_fillÚtext_strokeÚCé   )ÚmetavarÚnargsÚtype)éª   éd   r   éÿ   )r   é–   r,   r,   ©r,   r,   r,   r,   )r-   r,   r   r,   c                 ó0  — t          | d¬¦  «         |                      ddt          dd¬¦  «         |                      dd¬	¦  «         |                      d
ddt          j        d¬¦  «         |                      ddd„ d¬¦  «         |                      ddt
          d¬¦  «         |                      ddt          dd¬¦  «          | j        	 deddit          ¤Ž |                      dd d!¬"¦  «         |                      d#d$t
          d%d&¬'¦  «         |                      d(t          dd)¬*¦  «         |                      d+t          dd,¬*¦  «         |                      d-d.g d/t          j        d0¬1¦  «         |                      d2d3d4¬5¦  «         |  	                    d6d7¬8¦  «        }|                     d9t                               ¦   «         d:d;t          j        ¬<¦  «         |                     d=d3d>¬5¦  «         |                     d?d@dA„ dB¬¦  «         |                     dCdDt          dE¬F¦  «         |  	                    dGdH¬8¦  «        }|                     dIdJt          t          j        dK¬L¦  «         |                     dMt          j        ¦   «         t          dN¬¦  «         |                     dOdPdQt          j        dR¬S¦  «         |                     dTdUdVt          j        dW¬S¦  «         |                     dXt          j        dY¬Z¦  «         |  	                    d[d\¬8¦  «        }|                     d]d3d^¬5¦  «          |j        	 dfi t          ¤Ž  |j        	 dgi t          ¤Ž  |j        	 dhi t          ¤Ž  |j        	 dii t          ¤Ž |                     dcd3dd¬5¦  «         d S )jNT)Úpagesz--outputz-ozDOutput directory where the serially numbered images shall be placed.)r)   ÚrequiredÚhelpz--prefixzDCustom prefix for the images. Defaults to the input filename's stem.)r2   z--formatz-fÚjpgzThe image format to use.)Údefaultr)   r2   z--engineÚ
engine_clsc                 óP   — t           t          dœ|                      ¦   «                  S )N)Úpilz	numpy+cv2)Ú	PILEngineÚNumpyCV2EngineÚlower)Úks    r   ú<lambda>zattach.<locals>.<lambda>M   s   € ¥½ÐHÐHÈÏÊÉÌÔS€ r   z(The saver engine to use (pil, numpy+cv2))Údestr)   r2   z--scaleé   zªDefine the resolution of the output images. By default, one PDF point (1/72in) is rendered to 1x1 pixel. This factor scales the number of pixels that represent one point.z
--rotationr   )r   éZ   é´   i  z'Rotate pages by 90, 180 or 270 degrees.)r4   r)   Úchoicesr2   ú--fill-colorr2   z›Color the bitmap will be filled with before rendering. It shall be given in RGBA format as a sequence of integers ranging from 0 to 255. Defaults to white.z--optimize-mode)ÚlcdÚprintz3The rendering optimisation mode. None if not given.)rA   r2   z--cropr&   )r   r   r   r   z/Amount to crop from (left, bottom, right, top).)r(   r)   r4   r2   z--draw-annotsz1Whether annotations may be shown (default: true).)Úactionr4   r2   z--draw-formsz+Whether forms may be shown (default: true).z--no-antialiasú+)ÚtextÚimageÚpathz&Item types that shall not be smoothed.)r(   r4   rA   r)   r2   z--force-halftoneÚ
store_truez)Always use halftone for image stretching.)rE   r2   zBitmap optionsz&Bitmap config, including pixel format.)ÚtitleÚdescriptionz--bitmap-makerr   zThe bitmap maker to use.)rA   r4   r2   r)   z--grayscalez0Whether to render in grayscale mode (no colors).z--byteorderÚrev_byteorderc                 ó<   — dddœ|                       ¦   «                  S )NFT)ÚbgrÚrgb)r:   )Úvs    r   r<   zattach.<locals>.<lambda>›   s   €  ¨tÐ4Ð4°Q·W²W±Y´YÔ?€ r   z;Whether to use BGR or RGB byteorder (default: conditional).z--x-channelÚprefer_bgrxz@Whether to prefer BGRx/RGBx over BGR/RGB (default: conditional).)r=   rE   r2   ÚParallelizationz.Options for rendering with multiple processes.z--linearú?z¼Render non-parallel if page count is less or equal to the specified value (default is conditional). If this flag is given without a value, then render linear regardless of document length.)r(   r)   Úconstr2   z--processeszXThe maximum number of parallel rendering processes. Defaults to the number of CPU cores.z--parallel-strategy)ÚspawnÚ
forkserverÚforkrV   zQThe process start method to use. ('fork' is discouraged due to stability issues.))rA   r4   r)   r2   z--parallel-lib©ÚmpÚftrZ   zRThe parallelization module to use (mp = multiprocessing, ft = concurrent.futures).z--parallel-mapzLThe map function to use (backend specific, the default is an iterative map).)r)   r2   zForced color schemez[Options for using pdfium's forced color scheme renderer. Deprecated, considered not useful.z--sample-themezWUse a dark background sample theme as base. Explicit color params override selectively.ú--path-fillú--path-strokeú--text-fillú--text-strokez--fill-to-strokezqOnly draw borders around fill areas using the `path_stroke` color, instead of filling with the `path_fill` color.)rB   )r\   )r]   )r^   )r_   )r   Úadd_argumentr   Ústrr:   ÚfloatÚintÚ	ColorOptsr   Úadd_argument_groupÚBitmapMakersÚkeysÚmathÚinfÚosÚ	cpu_count)ÚparserÚbitmapÚparallelÚcolor_schemes       r   Úattachrp   8   sm  € Ýˆf˜DÐ!Ñ!Ô!Ð!Ø
×ÒØ�DÝØØUð	 ñ ô ð ð ×ÒØØUð ñ ô ð ð ×ÒØ�DØÝŒyØ)ð	 ñ ô ð ð ×ÒØØØSÐSØ9ð	 ñ ô ð ð ×ÒØØÝð |ð	 ñ ô ð ð ×ÒØØÝØ#Ø8ð ñ ô ð ð €FÔØðð ð mðõ ðð ð ð
 ×ÒØØ"ØDð ñ ô ð ð
 ×ÒØØÝØØ@ð ñ ô ð ð ×ÒØÝ&ØØBð	 ñ ô ð ð ×ÒØÝ&ØØ<ð	 ñ ô ð ð ×ÒØØØØ+ÝŒyØ7ð ñ ô ð ð ×ÒØØØ:ð ñ ô ð ð ×&Ò&Ø Ø>ð 'ñ ô €Fð ×ÒØÝ×#Ò#Ñ%Ô%ØØ)ÝŒyð ñ ô ð ð ×ÒØØØAð ñ ô ð ð
 ×ÒØØØ?Ð?ØLð	 ñ ô ð ð ×ÒØØÝ&ØQð	 ñ ô ð ð ×(Ò(Ø!ØFð )ñ ô €Hð ×ÒØØÝÝ”ð Nð ñ ô ð ð ×ÒØÝ”,‘.”.ÝØið	 ñ ô ð ð ×ÒØØ1ØÝŒyØbð ñ ô ð ð ×ÒØØØÝŒyØcð ñ ô ð ð ×ÒØÝŒyØ]ð ñ ô ð ð ×,Ò,Ø%Øsð -ñ ô €Lð ×ÒØØØhð ñ ô ð ð
 €LÔØðð å
ðð ð ð €LÔØðð å
ðð ð ð €LÔØðð å
ðð ð ð €LÔØðð å
ðð ð ð ×ÒØØð Cð ñ ô ð ð ð r   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚSavingEnginec                 ó   — || _         d S ©N©Ú_path_parts)ÚselfÚ
path_partss     r   Ú__init__zSavingEngine.__init__ì   s   € Ø%ˆÔÐÐr   c                 óB   — | j         \  }}}}||› |dz   d|› d�›d|› �z  S )Nr>   Ú0Údr	   ru   )rw   ÚiÚ
output_dirÚprefixÚn_digitsr   s         r   Ú	_get_pathzSavingEngine._get_pathï   sC   € Ø/3Ô/?Ñ,ˆ
�F˜H fØ˜vÐB q¨¡sÐB¨XÐBÐBÐBÐBÐB¸&ÐBÐBÑBÐBr   c                 ó¬   — |                       |¦  «        }|                      ||¦  «         t                               d|dz   › d|j        › �¦  «         d S )NzWrote page r>   z as )r�   Ú_saving_hookÚloggerÚinfoÚname)rw   rm   r}   Úout_paths       r   Ú__call__zSavingEngine.__call__ó   sX   € Ø—>’> !Ñ$Ô$ˆØ×Ò˜( FÑ+Ô+Ð+Ý�ŠÐ: ! A¡#Ð:Ð:¨8¬=Ð:Ð:Ñ;Ô;Ð;Ð;Ð;r   N)Ú__name__Ú
__module__Ú__qualname__ry   r�   rˆ   © r   r   rr   rr   ê   sD   € € € € € ð&ð &ð &ðCð Cð Cð<ð <ð <ð <ð <r   rr   c                   ó   — e Zd Zd„ ZdS )r8   c                 óT   — |                      ¦   «                              |¦  «         d S rt   )Úto_pilÚsave©rw   r‡   rm   s      r   rƒ   zPILEngine._saving_hookú   s$   € Ø�Š‰Œ×Ò˜XÑ&Ô&Ð&Ð&Ð&r   N©r‰   rŠ   r‹   rƒ   rŒ   r   r   r8   r8   ù   s#   € € € € € ð'ð 'ð 'ð 'ð 'r   r8   c                   ó   — e Zd Zd„ ZdS )r9   c                 ón   — t          j        t          |¦  «        |                     ¦   «         ¦  «         d S rt   )Úcv2Úimwritera   Úto_numpyr‘   s      r   rƒ   zNumpyCV2Engine._saving_hookþ   s*   € ÝŒ•C˜‘M”M 6§?¢?Ñ#4Ô#4Ñ5Ô5Ð5Ð5Ð5r   Nr’   rŒ   r   r   r9   r9   ý   s#   € € € € € ð6ð 6ð 6ð 6ð 6r   r9   c                 óÞ   — | r
 | ¦   «          t                                dt          j        ¦   «         › �¦  «         t	          j        ||d¬¦  «        }|r|                     ¦   «          |||fad S )NzInitializing data for process T)ÚpasswordÚ	autoclose)r„   r…   rj   Úgetpidr   ÚPdfDocumentÚ
init_formsÚProcObjs)Ú
extra_initÚinputr™   Úmay_init_formsr   ÚengineÚpdfs          r   Ú_render_parallel_initr¤     sw   € àð Øˆ
‰Œˆå
‡K‚KÐ>µ´±´Ð>Ð>Ñ?Ô?Ð?å
Ô
˜U¨XÀÐ
FÑ
FÔ
F€CØð Ø�ŠÑÔÐð �V˜VÐ$€H€H€Hr   c                 óH   — ||          } |j         di |¤Ž} ||| ¦  «         d S )NrŒ   )Úrender)r}   r£   r   r¢   Úpagerm   s         r   Ú_render_jobr¨     s:   € àˆqŒ6€DØˆTŒ[Ð"Ð"˜6Ð"Ð"€FØ
€Fˆ6�1ÑÔÐÐÐr   c                 ó*   — t          | gt          ¢R Ž  d S rt   )r¨   rž   )r}   s    r   Ú_render_parallel_jobrª     s   € Ý  Ð.¥XÐ.Ð.Ð.Ð.Ð.Ð.r   c                 ó²  ‡ ‡— t          ‰ ‰ j        ¬¦  «        }t          |¦  «        Št          ˆfd„‰ j        D ¦   «         ¦  «        st          d¦  «        ‚t          ‰ j        ¦  «        t          t          ‰ j        ¦  «        ¦  «        k    rt          d¦  «        ‚‰ j        €‰ j        j	        › d�‰ _        ‰ j
        €‰ j        rdnd‰ _
        ‰ j        €‰ j        dk    rd	nd
‰ _        ‰ j        €/t          d k    r‰ j        dk    rt           ‰ _        nt"          ‰ _        ‰ j        €‰ j        t"          u ‰ _        ‰ j        €‰ j        t"          u o
‰ j        dk    ‰ _        t)          ¦   «         }‰ j        r |j        di t,          ¤Ž  |j        di ˆ fd„t.          D ¦   «         ¤Ž t          |¦  «        dk    rt1          j        di |¤Žnd }t)          ‰ j        ‰ j        ‰ j        ‰ j        ‰ j
        |‰ j        ‰ j        ‰ j         ‰ j        ‰ j!        ‰ j        ‰ j        tD          ‰ j#                 ¬¦  «        }‰ j$        D ]
}d|d|› �<   ŒtJ           &                    ‰ j        j'        › d‰ j        › d‰ j        › d‰ j        › �¦  «         t          tQ          ‰¦  «        ¦  «        }‰ j)        ‰ j        |‰ j        f}‰                      |¦  «        }t          ‰ j        ¦  «        ‰ j        k    r8tJ           &                    d¦  «         ‰ j        D ]}	tU          |	|||¦  «         Œd S tJ           &                    d¦  «         tW          j,        ‰ j-        ¦  «        }
t)          |
j.        dft_          j0        tb          j2        |
¬¦  «        df¬¦  «        }|‰ j3                 \  }}‰ j4        r‰ j4        }‰ j-        dv rtj          nd }t)          tl          ||j7        ‰ j8        ‰ j        ||f¬¦  «        }ts          ‰ j:        t          ‰ j        ¦  «        ¦  «        } ||fi |¤Ž5 }tw          ||¦  «        } |tx          ‰ j        ¦  «        D ]}Œ	 d d d ¦  «         d S # 1 swxY w Y   d S )N)r�   c              3   ó8   •K  — | ]}d |cxk    o‰k     nc V — ŒdS )r   NrŒ   )Ú.0r}   Úpdf_lens     €r   ú	<genexpr>zmain.<locals>.<genexpr>#  s?   øè è € Ð4Ð4 Aˆq�AÐÐÒÐ˜ÒÐÐÐÐ4Ð4Ð4Ð4Ð4Ð4r   z*Out-of-bounds page indices are prohibited.z&Duplicate page indices are prohibited.Ú_)r   r   r   r,   r.   r3   é   é   Úpngc                 óR   •— i | ]#}t          ‰|¦  «        ¯|t          ‰|¦  «        “Œ$S rŒ   )Úgetattr)r­   Úfr   s     €r   ú
<dictcomp>zmain.<locals>.<dictcomp>@  s4   ø€ ÐRÐRÐR°ÅÈÈqÑAQÔAQÐR˜�7 4¨Ñ+Ô+ÐRÐRÐRr   r   )ÚscaleÚrotationÚcropÚ	grayscaleÚ
fill_colorro   Úfill_to_strokeÚoptimize_modeÚdraw_annotsÚmay_draw_formsÚforce_halftonerM   rR   Úbitmap_makerTÚ	no_smoothz
, Format: z, rev_byteorder: z, prefer_bgrx zLinear rendering ...zParallel rendering ...Úimap)Ú
mp_contextÚmaprY   )rV   rW   )ÚinitializerÚinitargsrŒ   )=r   Ú
draw_formsÚlenÚallr0   Ú
ValueErrorÚsetr   r    Ústemr¼   Úsample_themeÚlinearr   r5   r•   r9   r8   rM   rR   ÚdictÚupdateÚSampleThemeÚCsFieldsr   ÚPdfColorSchemer¸   r¹   rº   r»   r½   r¾   r¿   rÁ   rf   rÂ   Úno_antialiasr„   r…   r‰   ra   Úoutputr¨   rZ   Úget_contextÚparallel_strategyÚPoolÚ	functoolsÚpartialr[   ÚProcessPoolExecutorÚparallel_libÚparallel_mapr   r¤   Ú_inputr™   ÚminÚ	processesrµ   rª   )r   r£   Ú	cs_kwargsÚcsr   r)   r€   rx   r¢   r}   ÚctxÚpool_backendsÚ	pool_ctorÚmap_attrrŸ   Úpool_kwargsÚn_procsÚpoolÚmap_funcr°   r®   s   `                   @r   Úmainrí     s÷  øø€ õ �D T¤_Ð
5Ñ
5Ô
5€Cõ �#‰hŒh€GÝÐ4Ð4Ð4Ð4¨¬Ð4Ñ4Ô4Ñ4Ô4ð GÝÐEÑFÔFÐFÝ
ˆ4Œ:�„�#�c $¤*™oœoÑ.Ô.Ò.Ð.ÝÐAÑBÔBÐBà„{ÐØœœÐ+Ð+Ð+ˆŒØ„ÐØ,0Ô,=ÐW˜.˜.ÐCWˆŒØ„{ÐØœ;¨%Ò/Ð/�a�a°QˆŒð „ÐÝ�$Š;ˆ;˜4œ;¨%Ò/Ð/Ý,ˆDŒOˆOå'ˆDŒOð ÔÐ!Ø!œ_µ	Ð9ˆÔØÔÐàœ?­iÐ7ÐP¸D¼KÈ5Ò<PˆÔå‘”€IØÔð (Øˆ	ÔÐ'Ð'�;Ð'Ð'Ð'Ø€IÔÐSÐSÐRÐRÐRÐRµXÐRÑRÔRÐSÐSÐSÝ/2°9©~¬~ÀÒ/AÐ/A�Ô	Ð	+Ð	+ Ð	+Ð	+Ð	+Àt€BåØ”
Ø”=ØŒyØ”NØ”_ØØÔ,ØÔ*ØÔ&ØœØÔ,ØÔ*ØÔ&Ý# DÔ$5Ô6ðñ ô €Fð  Ô!ð *ð *ˆØ%)ˆÐ!˜4Ð!Ð!Ñ"Ð"õ ‡K‚K�4”?Ô+ð  Jð  J°t´{ð  Jð  JÐUYÔUgð  Jð  JÐw{ô  xHð  Jð  Jñ  Kô  Kð  Kå•3�w‘<”<Ñ Ô €HØ”+˜tœ{¨H°d´kÐB€JØ�_Š_˜ZÑ(Ô(€Få
ˆ4Œ:�„˜$œ+Ò%Ð%å�ŠÐ*Ñ+Ô+Ð+Ø”ð 	0ð 	0ˆAÝ˜˜3 ¨Ñ/Ô/Ð/Ð/ð	0ð 	0õ
 	�ŠÐ,Ñ-Ô-Ð-åŒn˜TÔ3Ñ4Ô4ˆåØ”(˜FÐ#ÝÔ#¥BÔ$:ÀsÐKÑKÔKÈUÐSð
ñ 
ô 
ˆð ,¨DÔ,=Ô>Ñˆ	�8ØÔð 	)ØÔ(ˆHà'+Ô'=ÐAXÐ'XÐ'X•m�mÐ^bˆ
ÝÝ/Ø" C¤J°´¸t¼ÐPVÐX^Ð_ð
ñ 
ô 
ˆõ
 �d”n¥c¨$¬*¡o¤oÑ6Ô6ˆØˆY�wÐ.Ð. +Ð.Ð.ð 	°$Ý˜t XÑ.Ô.ˆHØ�XÕ2°D´JÑ?Ô?ð ð �Øðð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Ð*QÑQÑQ)1rj   rh   ÚloggingrÛ   Úpathlibr   ÚmultiprocessingrZ   Úconcurrent.futuresÚfuturesr[   r•   ÚImportErrorÚpypdfium2._helpersÚ_helpersr   Úpypdfium2.internalÚinternalr   Úpypdfium2.rawÚrawr
   Úpypdfium2._cli._parsersr   r   r   r   Ú	getLoggerr‰   r„   r   rÑ   r   Ú
new_nativeÚnew_foreignrÜ   rf   rÔ   rc   rd   rÓ   rp   rr   r8   r9   r¤   r¨   rª   rí   rŒ   r   r   ú<module>rþ      s�  ðð 
€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð ðØ€J€J€J€JøØð ð ð Ø
€C€C€Cðøøøð $Ð #Ð #Ð #Ð #Ð #Ø %Ð %Ð %Ð %Ð %Ð %Ø  Ð  Ð  Ð  Ð  Ð  ðð ð ð ð ð ð ð ð ð ð ð ð 
ˆÔ	˜8Ñ	$Ô	$€ðZð Zð Zð ˆtØÔÔ(ØÔÔ*Ø&�YÔ& vÔ'7Ô'CÐRVÐWÑWÔWØ3ð	ñ ô €ð D€ØˆD˜ A¨CÐ0Ñ0Ô0€	Øˆdà&Ø&Ø&Ø&ðñ ô €ðoð oð oðd<ð <ð <ð <ð <ñ <ô <ð <ð'ð 'ð 'ð 'ð '�ñ 'ô 'ð 'ð6ð 6ð 6ð 6ð 6�lñ 6ô 6ð 6ð
%ð %ð %ðð ð ð/ð /ð /ð`ð `ð `ð `ð `s   ¢' §1°1