%!PS-Adobe-2.0
% CS-UTSA logo, by N Wagner, 2006-09-30
% coords in points. 72 pts = 1 in
% thickness of white border in pts:
/borderwidth 8.8 def
% color of border (in case background != white)
/bordercolor { DarkBlue } def
% see below for way to put A on top of S
% origin = lower left corner of page
/xstart 100 def % start of text, x coord
/ystart 100 def % start of text, y coord
/orange { Orange } def
/blue { DarkBlue } def
% here are some colors. Try lighter blues, redder orange
/Orange2 {1.0 0.7 0.0 setrgbcolor} def
/RedishOrange2 {1.0 0.6 0.0 setrgbcolor} def
/RedOrange2 {1.0 0.5 0.0 setrgbcolor} def
/Blue2 {0 0 1 setrgbcolor} def
/Green2 {0 1 0 setrgbcolor} def
/LightBlue2 {0.3 0.3 1 setrgbcolor} def
/DarkerBlue2 {0 0 0.8 setrgbcolor} def
/DarkBlue2 {0 0 0.6 setrgbcolor} def
% other color model
/Yellow{0 0 1 0 setcmykcolor}def
/RedOrange{0 0.77 0.87 0 setcmykcolor}def
/Orange{0 0.61 0.87 0 setcmykcolor}def
/Black{0 0 0 1 setcmykcolor}def
/White{0 0 0 0 setcmykcolor}def
/LBlue {0.8 0.8 0 0 setcmykcolor}def
/VLBlue {0.6 0.6 0 0 setcmykcolor}def
/Blue {1 1 0 0 setcmykcolor}def
/DarkBlue {1 1 .2 0 setcmykcolor}def
/DarkerBlue {1 1 .4 0 setcmykcolor}def
/VeryDarkBlue {1 1 .6 0 setcmykcolor}def
/Helvetica-Bold findfont 100 scalefont setfont
/nextchar { % stack: color kern str1 str2
/col exch def % save color value
/kern exch def % save kern amount
/startstr exch def % save first string
/nextchr exch def % save 2nd string = next char
% create path around letter
startstr stringwidth pop
xstart add kern sub ystart moveto
nextchr false charpath
% first stroke with fat line, make fat char
gsave
bordercolor
7.8 borderwidth add setlinewidth % fat line
stroke
grestore
gsave
col 0 gt { White } { orange } ifelse
7.8 setlinewidth % fat line
stroke
grestore
% then fill in the char
col 0 gt { White } { orange } ifelse
fill
} def
/inch { 72 mul } def
newpath
0 0 moveto
0 11 inch rlineto
8.5 inch 0 rlineto
0 -11 inch rlineto
closepath
blue
fill
% below: third param is kern amount
% note that these are _cumulative_
% fourth param is DarkBlue versus Orange
(U) () 0 1 nextchar
(T) (U) 30 1 nextchar
% to put the A on top of the S, interchange nest two lines
(A) (UTS) 90 1 nextchar
/ystart ystart 2 add def % move ystart up 2 pts
(S) (UT) 58 0 nextchar
/ystart ystart 74 add def % move ystart up 74 pts
(C) (UT) 58 4 add 0 nextchar
showpage