1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
Ë
³òúhóãóT—ddlmZddlZddlmZddlmZdZGd„d«Zd    Z    d
Z
d Z y) é)Ú annotationsN)ÚIOé)ÚEpsImagePluginFcóv—eZdZdZd dd„Zd dd„Zdd„Zdd„Zdd„Zdd„Z    dd    „Z
e rd
d l m Z     d                             dd „Zy)ÚPSDrawzi
    Sets up printing to the given file. If ``fp`` is omitted,
    ``sys.stdout.buffer`` is assumed.
    NcóJ—|stjj}||_y©N)ÚsysÚstdoutÚbufferÚfp)Úselfrs  ú=H:\Change_password\venv_build\Lib\site-packages\PIL/PSDraw.pyÚ__init__zPSDraw.__init__%s€ÙÜ—‘×"Ñ"ˆB؈ócóú—|jjd«|jjt«|jjt«|jjd«i|_y)z=Set up printing of a document. (Write PostScript DSC header.)sD%!PS-Adobe-3.0
save
/showpage { } def
%%EndComments
%%BeginDocument
s %%EndProlog
N)rÚwriteÚ    EDROFF_PSÚVDI_PSÚisofont)rÚids  rÚbegin_documentzPSDraw.begin_document*sS€ð     ‰ ‰ ð !ô    
ð     ‰ ‰ ”iÔ Ø ‰ ‰ ”fÔØ ‰ ‰ Ð&Ô'Ø)+ˆ rcóœ—|jjd«t|jd«r|jj«yy)z-Ends printing. (Write PostScript DSC footer.)s%%%EndDocument
restore showpage
%%End
ÚflushN)rrÚhasattrr)rs rÚ end_documentzPSDraw.end_document:s3€à ‰ ‰ ÐAÔBÜ 4—7‘7˜GÔ $Ø G‰GM‰MOð %rcó֗t|d«}||jvr/|jjd||fz«d|j|<|jjd||fz«y)z~
        Selects which font to use.
 
        :param font: A PostScript font name
        :param size: Size in points.
        úUTF-8s#/PSDraw-%s ISOLatin1Encoding /%s E
rs/F0 %d /PSDraw-%s F
N)Úbytesrrr)rÚfontÚsizeÚ
font_bytess    rÚsetfontzPSDraw.setfont@sd€ô˜4 Ó)ˆ
Ø ˜TŸ\™\Ñ )à G‰GM‰MØ7¸:ÀzÐ:RÑRô ð()ˆDL‰L˜Ñ $à ‰ ‰ Ð.°$¸
Ð1CÑCÕDrcóJ—|jjdg|¢|¢­z«y)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).
        s%d %d %d %d Vl
N©rr)rÚxy0Úxy1s   rÚlinez PSDraw.lineQs"€ð      ‰ ‰ Ð)¨L¨c¨L°C©LÑ8Õ9rcó@—|jjd|z«y)z‰
        Draws a rectangle.
 
        :param box: A tuple of four integers, specifying left, bottom, width and
           height.
        s%d %d M 0 %d %d Vr
Nr&)rÚboxs  rÚ    rectanglezPSDraw.rectangleYs€ð     ‰ ‰ Ð-°Ñ3Õ4rcóà—t|d«}dj|jd««}dj|jd««}|jj    d||fzz«y)zŠ
        Draws text at the given position. You must use
        :py:meth:`~PIL.PSDraw.PSDraw.setfont` before calling this method.
        rs\(ó(s\)ó)s%d %d M (%s) S
N)r ÚjoinÚsplitrr)rÚxyÚtextÚ
text_bytess    rr3z PSDraw.textbs_€ô
˜4 Ó)ˆ
Ø—[‘[ ×!1Ñ!1°$Ó!7Ó8ˆ
Ø—[‘[ ×!1Ñ!1°$Ó!7Ó8ˆ
Ø ‰ ‰ Ð)¨R°:°-Ñ-?Ñ@ÕArr)ÚImagecó¬—|s|jdk(rd}nd}|jddz|z }|jddz|z }t|d|dz
«}t|d|dz
«}||kDr
||z|z }|}||kDr
||z|z }|}||z
dz |dz}||z
dz |dz}    |jj    d    ||    fz«||f|jk7rD||jdz }
||jdz } |jj    d
|
| fz«t j ||jd d«|jj    d «y )z,Draw a PIL image, centered in the given box.Ú1éÈédréHréésgsave
%f %f translate
s %f %f scale
Ús
 
grestore
N)Úmoder"ÚfloatrrrÚ_save) rr+ÚimÚdpiÚxÚyÚxmaxÚymaxÚdxÚdyÚsxÚsys             rÚimagez PSDraw.imageos`€ñ
؏w‰w˜#Š~Ø‘àà G‰GA‰J˜‰O˜cÑ !ˆØ G‰GA‰J˜‰O˜cÑ !ˆäS˜‘V˜c !™f‘_Ó%ˆÜS˜‘V˜c !™f‘_Ó%ˆØ ˆtŠ8ؐD‘˜1‘ ˆA؈AØ ˆtŠ8ؐD‘˜1‘ ˆA؈AؐQ‰h˜!‰^˜c !™fÑ $ˆØQ‰h˜!‰^˜c !™fÑ $ˆØ ‰ ‰ Ð1°R¸°HÑ<Ô=Ø ˆqˆ6R—W‘WÒ àR—W‘W˜Q‘Z‘ˆBؐR—W‘W˜Q‘Z‘ˆBØ G‰GM‰MÐ*¨b°"¨XÑ5Ô 6Ü×јR §¡¨"¨aÔ0Ø ‰ ‰ oÕ&rr
)rzIO[bytes] | NoneÚreturnÚNone)rz
str | NonerLrM)rLrM)r!Ústrr"ÚintrLrM)r'útuple[int, int]r(rPrLrM)r+útuple[int, int, int, int]rLrM)r2rPr3rNrLrM)r+rQrAz Image.ImagerBz
int | NonerLrM)Ú__name__Ú
__module__Ú __qualname__Ú__doc__rrrr$r)r,r3Ú TYPE_CHECKINGr=r5rK©rrrrs`„ñô
ô
,ó ó Eó":ó5óBñÝðRVð'Ø,ð'Ø2=ð'ØDNð'à     ô'rrs×/S { show } bind def
/P { moveto show } bind def
/M { moveto } bind def
/X { 0 rmoveto } bind def
/Y { 0 exch rmoveto } bind def
/E {    findfont
        dup maxlength dict begin
        {
                1 index /FID ne { def } { pop pop } ifelse
        } forall
        /Encoding exch def
        dup /FontName exch def
        currentdict end definefont pop
} bind def
/F {    findfont exch scalefont dup setfont
        [ exch /setfont cvx ] cvx bind def
} bind def
sß/Vm { moveto } bind def
/Va { newpath arcn stroke } bind def
/Vl { moveto lineto stroke } bind def
/Vc { newpath 0 360 arc closepath } bind def
/Vr {   exch dup 0 rlineto
        exch dup 0 exch rlineto
        exch neg 0 rlineto
        0 exch neg rlineto
        setgray fill } bind def
/Tm matrix def
/Ve {   Tm currentmatrix pop
        translate scale newpath 0 0 .5 0 360 arc closepath
        Tm setmatrix
} bind def
/Vf { currentgray exch setgray fill setgray } bind def
sã/landscape false def
/errorBUF 200 string def
/errorNL { currentpoint 10 sub exch pop 72 exch moveto } def
errordict begin /handleerror {
    initmatrix /Courier findfont 10 scalefont setfont
    newpath 72 720 moveto $error begin /newerror false def
    (PostScript Error) show errorNL errorNL
    (Error: ) show
        /errorname load errorBUF cvs show errorNL errorNL
    (Command: ) show
        /command load dup type /stringtype ne { errorBUF cvs } if show
        errorNL errorNL
    (VMstatus: ) show
        vmstatus errorBUF cvs show ( bytes available, ) show
        errorBUF cvs show ( bytes used at level ) show
        errorBUF cvs show errorNL errorNL
    (Operand stargck: ) show errorNL /ostargck load {
        dup type /stringtype ne { errorBUF cvs } if 72 0 rmoveto show errorNL
    } forall errorNL
    (Execution stargck: ) show errorNL /estargck load {
        dup type /stringtype ne { errorBUF cvs } if 72 0 rmoveto show errorNL
    } forall
    end showpage
} def end
) Ú
__future__rr Útypingrr=rrVrrrÚERROR_PSrWrrú<module>r[s:ðõ"#ã
Ýåà€ ÷o'ño'ð~ €    ð:
€ð2 r