[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Aw: Re: Pseudo-handwritten font
From: |
Keith OHara |
Subject: |
Re: Aw: Re: Pseudo-handwritten font |
Date: |
Fri, 21 Jun 2013 16:11:54 +0000 (UTC) |
User-agent: |
Loom/3.14 (http://gmane.org/) |
Torsten Hämmerle <torsten.haemmerle <at> web.de> writes:
> I've attached a zip file containing the current (albeit unfinished)
> versions of the LilyJAZZ music and LilyJAZZ Text font plus the
> corresponding LilyJAZZ.ily include.
> The main obstacle is the rigid way Lilypond handles its (her, his?)
> internal music font.
One effect of those difficulties is that the function that builds the
jazz-font key-signature needs to change with version 2.17.1 and later.
I had expanded the options for how to print the key signature in that
versions, so we need to adapt 'jazz-keysig' to the new interface.
Changing a few lines to Thorsten's code as below works for me.
#(define (jazz-keysig grob)
"stencil: jazz key signature (including cancellation)"
(let* ((altlist (ly:grob-property grob 'alteration-alist))
(c0pos (ly:grob-property grob 'c0-position))
(keysig-stencil '()))
(for-each (lambda (alt)
(let* ((alteration (if (grob::has-interface grob 'key-cancellation-
interface) 0 (cdr alt)))
(glyphname (assoc-get alteration jazz-alteration-glyph-name-alist
""))
(padding (cond
((< alteration 0) 0.25) ; any kind of flat
((= alteration 0) 0.05) ; natural
((< alteration 1) 0.1) ; sharp (less than double sharp)
(else -0.4))) ; double sharp
(ypos (key-signature-interface::alteration-positions alt c0pos
grob))
(acc-stencil (fold (lambda (y s)
(ly:stencil-add
(grob-interpret-markup grob
(markup #:raise (/ y 2) #:jazzglyph
glyphname))
s))
empty-stencil
ypos)))
(set! keysig-stencil (ly:stencil-combine-at-edge acc-stencil X
RIGHT keysig-stencil padding)))) altlist)
keysig-stencil))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: Aw: Re: Pseudo-handwritten font,
Keith OHara <=