Your IP : 216.73.216.213
�ʴW� � @ sH d d l m Z d d l Z Gd d � d e � Z d Z d Z d Z d S)� )�EpsImagePluginNc @ s� e Z d Z d Z d d d � Z d d � Z d d d � Z d d
� Z d d � Z d
d � Z d d � Z
d d � Z d d d � Z d S)�PSDrawzk
Sets up printing to the given file. If **file** is omitted,
:py:attr:`sys.stdout` is assumed.
Nc C s | s t j } | | _ d S)N)�sys�stdout�fp)�selfr � r �=/opt/alt/python35/lib64/python3.5/site-packages/PIL/PSDraw.py�__init__ s zPSDraw.__init__c C sN t t k s | j t j k r1 | j j | � n | j j t | d � � d S)NzUTF-8)�bytes�strr r r �write)r Zto_writer r r � _fp_write$ s zPSDraw._fp_writec C sA | j d � | j t � | j t � | j d � i | _ d S)z=Set up printing of a document. (Write Postscript DSC header.)zD%!PS-Adobe-3.0
save
/showpage { } def
%%EndComments
%%BeginDocument
z%%EndProlog
N)r � EDROFF_PS�VDI_PS�isofont)r �idr r r �begin_document* s
zPSDraw.begin_documentc C s0 | j d � t | j d � r, | j j � d S)z-Ends printing. (Write Postscript DSC footer.)z%%%EndDocument
restore showpage
%%End
�flushN)r �hasattrr r )r r r r �end_document8 s
zPSDraw.end_documentc C sN | | j k r3 | j d | | f � d | j | <| j d | | f � d S)z~
Selects which font to use.
:param font: A Postscript font name
:param size: Size in points.
z#/PSDraw-%s ISOLatin1Encoding /%s E
� z/F0 %d /PSDraw-%s F
N)r r )r Zfont�sizer r r �setfont@ s
zPSDraw.setfontc C s | | } | j d | � d S)z�
Draws a line between the two points. Coordinates are given in
Postscript point coordinates (72 points per inch, (0, 0) is the lower
left corner of the page).
z%d %d %d %d Vl
N)r )r Zxy0Zxy1�xyr r r �lineO s
zPSDraw.linec C s | j d | � d S)a8
Draws a rectangle.
:param box: A 4-tuple of integers whose order and function is currently
undocumented.
Hint: the tuple is passed into this format string:
.. code-block:: python
%d %d M %d %d 0 Vr
z%d %d M %d %d 0 Vr
N)r )r �boxr r r � rectangleX s
zPSDraw.rectanglec C sR d j | j d � � } d j | j d � � } | | f } | j d | � d S)z�
Draws text at the given position. You must use
:py:meth:`~PIL.PSDraw.PSDraw.setfont` before calling this method.
z\(�(z\)�)z%d %d M (%s) S
N)�join�splitr )r r �textr r r r"