%!PS-Adobe-2.0: lilyponddefs.ps
-% TODO:
-% * junk all magic, start-line/stop-line just: placebox @ x.y
%
% Functions for direct PostScript output
% /setgray { 1 add } bind def
-% To let gs load fonts from builddir, do:
-% export GS_LIB=$(pwd)/mf/out:/usr/share/texmf/fonts/type1/bluesky/cm
-
-
-/set-ps-scale-to-lily-scale { output-scale output-scale scale } bind def
+/set-ps-scale-to-lily-scale {
+ lily-output-units output-scale mul dup scale
+} bind def
/init-paper {
gsave
- .1 setlinewidth
- clippath pathbbox newpath
- /vsize exch def
- /hsize exch def pop pop pop pop
+ clippath pathbbox newpath
+ /paper-height exch def
+ /paper-width exch def pop pop pop
% FIXME
/top-margin 2 def
- hsize line-width sub 2 div /left-margin exch def
+ paper-width line-width sub 2 div /left-margin exch def
grestore
} bind def
-/place-box
-{
- /object exch def
- gsave
- %exch translate
- translate
- 0 0 moveto
- object
- grestore
-} bind def
-
-%% http://bibliofile.mc.duke.edu/gww/fonts/postscript-utilities/encoding-vectors.html
-
-%/FONTLENGTH 256 bind def
-
-%<font> <encoding> <name> reencode-font
-/reencode-dict 5 dict def
-/reencode-font
-{
- reencode-dict
- begin
- /name exch def
- /encoding exch def
- /base-font exch def
- % note: Needs ps level 2
- /font base-font maxlength dict def
- base-font {
- exch dup dup /FID ne exch /Encoding ne and
- { exch font 3 1 roll put }
- { pop pop } ifelse
- } forall
- font /FontName name put
- font /Encoding encoding put
- name font definefont pop
- end
+/init-lilypond-parameters {
+ staff-line-thickness setlinewidth
+ staff-height init-paper
} bind def
-/start-system % x y
-{
- gsave
- exch output-scale mul exch
- output-scale mul vsize exch sub translate
-} bind def
-
-/stop-system
-{
- /the-line exch def
- the-line stroke grestore
-} bind def
-
-/end-lilypond-output
-{
-% showpage
-} bind def
-
-staff-line-thickness setlinewidth
-
-% set postscript paper size
-paper-size
-
-% initialise paper dimensions
-staff-height init-paper
% end lilyponddefs.ps