)EjddlmZddlmZddlmZmZddlmZ ddlm Z ddlm Z dad d Zeejdr&GddejZeed!dZGddejZd"dZejejeeejejeejejddgdS)#) annotations)IO)Image ImageFile)i16le)si16le)si32leNhandlerImageFile.StubHandler | NonereturnNonec |adS)z^ Install application-specific WMF image handler. :param handler: Handler object. N_handler)r s DC:\PYTHON\MyICR_Suite\python\Lib\site-packages\PIL/WmfImagePlugin.pyregister_handlerr!s HHHdrawwmfceZdZd dZd dZdS) WmfHandlerimImageFile.StubImageFiler rc*|jd|_dS)Nwmf_bbox)infobboxselfrs ropenzWmfHandler.open/s +DIIIr Image.Imagec .|jJ|jdtjd|jtj|j|j|jdd|jddzdzdzdS)NrRGBrawBGR) fpseekr frombytessizecorerreadrrs rloadzWmfHandler.load2s5$$$ EJJqMMM? ""25::<<$)DDa!#r) rN)rrr r)rrr r!)__name__ __module__ __qualname__r r/rrrr.s< , , , ,      rrprefixbytesboolc,|dS)N)ƚ) startswith)r4s r_acceptr;Fs   O P PPrc<eZdZdZdZd dZddZ ddfd ZxZS)WmfStubImageFileWMFzWindows Metafiler rc|jJ|jd}|drt|d}|dkrd}t |||f|_t |d}t |d}t |d}t |d }d |jd <||z |jd z|z||z |jd z|zf}||||f|jd <|d ddkrd}t|n%|dr|dddkrt|d}t|d }t|d}t|d}t|dt|dt|dt|df} ||z ||z f}d||z z| d| dz z } d||z z| d| dz z } ||||f|jd <| | kr | |jd <n | | f|jd <| | f|_nd}t|d|_ ||_ dS) N,r8rz Invalid inch Hdpirs zUnsupported WMF file formatr9(s EMF $gأ@r&rzUnsupported file formatr#) r)r.r:word ValueError_inchshortr SyntaxError_long_mode_size) rsinchmsgx0y0x1y1r,framexdpiydpis r_openzWmfStubImageFile._openRs~w""" GLL   <<3 4 4: #2;;Dqyy$ oo%.2DjDJq!Bq!Bq"Bq"B "DIe bDIe,,4bDIe,,4D %'BNDIj !Bx,,,3!#&&&-\\- . . #1RU8w3F3Fq!Bq"Bq"Bq"B!RLL%2,,a eArllJE7BG#DR"W%qE!H)<=DR"W%qE!H)<=D$&BNDIj !t||#' %  #': % tDJJ,Cc"" "  rr ctSNr)rs r_loadzWmfStubImageFile._loadsrNrG"float | tuple[float, float] | NoneImage.core.PixelAccess | Nonec`|||jd<|jd\}}}}t|ts||f}t||z |dz|jdz t||z |dz|jdz f|_t S)NrGrrr)r isinstancetupleintrTrYsuperr/)rrGr]r^r_r` __class__s rr/zWmfStubImageFile.loads ?"DIe !Yz2NBBc5)) 3hR"WA&A677R"WA&A677DJww||~~r)r r)r r rf)rGrhr ri) r0r1r2formatformat_descriptionrdrgr/ __classcell__)ros@rr=r=Ns F+BBBBH9=           rr=rr!r) IO[bytes]filename str | bytesctttdsd}t|t|||dS)NsavezWMF save handler not installed)rhasattrOSErrorrw)rr)rtr\s r_saverzsDwx88.cll MM"b(#####rz.wmfz.emf)r r r r)r4r5r r6)rr!r)rsrtrur r) __future__rtypingrrr_binaryrrRr rUr rWrrrxr- StubHandlerrr; StubImageFiler=rz register_openrp register_saveregister_extensionsr3rrrs*#"""""""""""$$$$$$$$$$$$  75:y!!#Y*"ZZ\\"""QQQQWWWWWy.WWWt$$$$$+-=wGGG$+U333*1FF3CDDDDDr