X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=ps%2Fmusic-drawing-routines.ps;h=8fd31f3587502f0e7dfa4813f9604b730bc0a2af;hb=a65798c5638c4d0a3b323e3e3012a754efe6984b;hp=2df5913accf0d072761995820353bc41245e4eca;hpb=34141471a3a50d637a22d19da0c8645bae59fdc2;p=lilypond.git diff --git a/ps/music-drawing-routines.ps b/ps/music-drawing-routines.ps index 2df5913acc..8fd31f3587 100644 --- a/ps/music-drawing-routines.ps +++ b/ps/music-drawing-routines.ps @@ -59,32 +59,6 @@ bind def b4_Inc_state restore } bind def - -% reencode-font -/reencode-font -{ - /name exch def - /encoding exch def - dup length - dict begin { - 1 index /FID ne {def} {pop - pop} ifelse - } - forall - /Encoding encoding - def currentdict - end - name exch definefont -} bind def - - - -/set_tex_dimen -{ - cvr def -} bind def - - /stroke_and_fill { gsave stroke @@ -149,13 +123,17 @@ bind def closepath fill } bind def -% this is for drawing slurs. -/draw_bezier_sandwich % thickness controls +% this is for drawing slurs and barre-indicators. +/draw_bezier_sandwich % x5 y5 x6 y6 x7 y7 + % x4 y4 + % x1 y1 x2 y2 x3 y3 + % x0 y0 + % linewidth draw_bezier_sandwich { gsave currentpoint translate - % round ending and round beginning - 1 setlinejoin 1 setlinecap + % round ending and round beginning + 1 setlinejoin 1 setlinecap setlinewidth moveto curveto @@ -186,6 +164,33 @@ bind def ifelse } bind def +/draw_oval % filled? x-radius y-radius thickness draw_ellipse +{ + setlinewidth % f? x-r y-r + /yrad exch def + /xrad exch def + xrad 0 rmoveto + 0 yrad -2 xrad mul dup yrad exch 0 rcurveto + 0 yrad neg dup 2 xrad mul dup 3 1 roll 0 rcurveto + closepath + { stroke_and_fill} + { stroke } + ifelse +} bind def + +/draw_ellipse % filled? x-radius y-radius thickness draw_ellipse +{ + setlinewidth % f? x-r y-r + /savematrix matrix currentmatrix def + scale % f? + currentpoint + 1 0 rmoveto + 1 0 360 arc closepath + savematrix setmatrix + { stroke_and_fill} + { stroke } + ifelse +} bind def /draw_line % dx dy x1 y1 thickness draw_line { @@ -197,7 +202,7 @@ bind def stroke } bind def -/draw_dashed_line % dx dy thickness dashpattern draw_dashed_line +/draw_dashed_line % dx dy thickness dashpattern offset draw_dashed_line { 1 setlinecap 1 setlinejoin @@ -223,14 +228,16 @@ gsave grestore } bind def -/print_glyphs % dx dy glyph print_glyphs +/print_glyphs % w dx dy glyph print_glyphs { { - currentpoint %dx dy glyph x0 y0 - 3 2 roll %dx dy x0 y0 glyph - glyphshow % dx dy x0 y0 - moveto % dx dy - rmoveto + currentpoint %w dx dy glyph x0 y0 + 5 2 roll %w x0 y0 dx dy glyph + 3 1 roll %w x0 y0 glyph dx dy + rmoveto %w x0 y0 glyph + glyphshow %w x0 y0 + moveto %w + 0 rmoveto }repeat }bind def %end music-drawing-routines.ps