Ñò
…n+Oc           @   sÜ   d  Z  d d k Z d d k Z d d k Z h	 d d 6d d 6d d 6d  d! 6d" d# 6d$ d% 6d& d' 6d( d) 6d* d+ 6Z d „  Z d „  Z d „  Z d e i f d „  ƒ  YZ d „  Z	 d „  Z
 e i d e e ƒ e i d d ƒ d S(,   s   0.4iÿÿÿÿNt   1i   i    t   Li   t   Pi   t   RGBi   t   CMYKi   i   t   LABi	   c         C   s    t  |  d ƒ t  |  d ƒ d >S(   Ni   i    i   (   t   ord(   t   c(    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   i16'   s    c         C   sD   t  |  d ƒ t  |  d ƒ d >t  |  d ƒ d >t  |  d ƒ d >S(   Ni   i   i   i   i   i    i   (   R   (   R   (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   i32*   s    c         C   s   |  d  d j S(   Ni   t   8BPS(    (   t   prefix(    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   _accept0   s    t   PsdImageFilec           B   s8   e  Z d  Z d Z d „  Z d „  Z d „  Z d „  Z RS(   t   PSDs   Adobe Photoshopc         C   s  |  i  i } | d ƒ } | d  d j p t | d ƒ d j o t d ‚ n t | d ƒ } t | d ƒ } t | d ƒ } t | | f \ } } | | j o t d	 ‚ n | |  _ t | d
 ƒ t | d ƒ f |  _ t | d ƒ ƒ } | oC | | ƒ }	 | d j o& | d j o t	 i
 d |	 ƒ |  _ q5n g  |  _ t | d ƒ ƒ } | oø |  i  i ƒ  | }
 xâ |  i  i ƒ  |
 j  oÇ | d ƒ } t | d ƒ ƒ } | t | d ƒ ƒ ƒ } t | ƒ d @p | d ƒ n | t | d ƒ ƒ ƒ }	 t |	 ƒ d @o | d ƒ n |  i i | | |	 f ƒ | d j o |	 |  i d <qmqmWn g  |  _ t | d ƒ ƒ } | oV |  i  i ƒ  | }
 t | d ƒ ƒ } | o t |  i  ƒ |  _ n |  i  i |
 ƒ n t |  i  | d |  i | ƒ |  _ |  i  |  _ d |  _ d  S(   Ni   i   R
   i   s   not a PSD filei   i   i   s   not enough channelsi   i   R   i   s   RGB;Li   i  t   icc_profilei    (   i    i    (   t   fpt   readR   t   SyntaxErrort   MODESt   IOErrort   modeR	   t   sizet   ImagePalettet   rawt   palettet	   resourcest   tellR   t   lent   appendt   infot   layerst
   _layerinfot   seekt	   _maketilet   tilet   _fpt   frame(   t   selfR   t   st   psd_bitst   psd_channelst   psd_modeR   t   channelsR   t   datat   endt	   signaturet   idt   name(    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   _open;   sZ    (	#	 	"c         C   s¡   | |  i  j o d  Syi | d j o
 t ‚ n |  i | d \ } } } } | |  _ | |  _ | |  _  |  i |  _ | | f SWn t j
 o t d ‚ n Xd  S(   Ni    i   s   no such layer(   R%   t
   IndexErrorR   R   R#   R$   R   t   EOFError(   R&   t   layerR0   R   t   bboxR#   (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyR!   ‡   s    
			c         C   s   |  i  S(   N(   R%   (   R&   (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyR   —   s    c         C   s„   |  i  p, |  i  i |  i j p |  i  i |  i j o% t i i |  i |  i d ƒ |  _  n |  i d j o t i i |  ƒ n d  S(   Ni    R   (   t   imR   R   t   Imaget   coret   fillt   load(   R&   (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   load_prepare›   s
    ,%(   t   __name__t
   __module__t   formatt   format_descriptionR1   R!   R   R;   (    (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyR   6   s   	L		c      
   C   su  g  } |  i  } xÛt t t | d ƒ ƒ ƒ ƒ D]»} t | d ƒ ƒ } t | d ƒ ƒ } t | d ƒ ƒ } t | d ƒ ƒ } g  } g  }	 x… t t | d ƒ ƒ ƒ D]k } t | d ƒ ƒ }
 |
 d j o
 d } n d |
 } |	 i | ƒ t | d ƒ ƒ } | i | | f ƒ q¡ W|	 i ƒ  |	 d g j o
 d }	 nJ |	 d d	 d g j o
 d }	 n* |	 d d d	 d g j o
 d
 }	 n d  }	 | d ƒ } d } t | d ƒ ƒ } d } | ot | d ƒ ƒ } | oh t | d ƒ ƒ } t | d ƒ ƒ } t | d ƒ ƒ | } t | d ƒ ƒ | } |  i | d d ƒ n | | d 7} t | d ƒ ƒ } | o |  i | d ƒ n | | d 7} t	 | d ƒ ƒ } | o | | ƒ } n | | d 7} n |  i | | d ƒ | i | |	 | | | | f f ƒ q. Wd } x{ | D]s \ } }	 } g  } x; |	 D]3 } t
 |  | | d ƒ } | o | i | ƒ qqW| |	 | | f | | <| d } qúW| S(   Ni   i   iÿÿ  t   AR   t   RR   t   Bt   Gt   RGBAi   t    i    i   i   (   R   t   ranget   absR   R	   R   t   sortt   NoneR!   R   R"   t   extend(   t   fileR   R   t   it   y0t   x0t   y1t   x1R   R   t   typet   mR   t   fillerR0   t   combinedt   lengtht   mask_yt   mask_xt   mask_ht   mask_wR5   R#   t   t(    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyR    ¤   s|    	    





  &  c         C   sÃ  d  } |  i } t | d ƒ ƒ } | d | d } | d | d } |  i ƒ  }	 | d j om g  } x2t | ƒ D]R }
 | |
 } | d j o | d } n | i d | |	 | f ƒ |	 | | }	 qq WnÏ | d j oÁ d } g  } | | | d ƒ } |  i ƒ  }	 x’ t | ƒ D]€ }
 | |
 } | d j o | d } n | i d | |	 | f ƒ x9 t | ƒ D]+ } |	 t | | | d !ƒ }	 | d } qbWqWn |  i |	 ƒ |	 d @o | d ƒ n | S(	   Ni   i    i   i   R   s   ;IR   t   packbits(   RI   R   R   R   RF   R   R!   (   RK   R   R5   R+   R#   R   t   compressiont   xsizet   ysizet   offsett   channelR4   RL   t	   bytecountt   y(    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyR"   î   sF    	 
 
 R   s   .psd(   R    i   (   i    i   (   R   i   (   i    i   (   R   i   (   i   i   (   R   i   (   i   i   (   s   RGBi   (   i   i   (   s   CMYKi   (   i   i   (   R   i   (   i   i   (   R   i   (   i   i   (   R   i   (   i	   i   (   t   __version__R7   t	   ImageFileR   R   R   R	   R   R   R    R"   t   register_opent   register_extension(    (    (    s<   /usr/local/lib/python2.6/dist-packages/PIL/PsdImagePlugin.pyt   <module>   s&   $
			n	J	3