]> git.donarmstrong.com Git - lilypond.git/commitdiff
DynamicText: reference point at middle of ex-height
authorKeith OHara <k-ohara5a5a@oco.net>
Thu, 5 Sep 2013 06:50:36 +0000 (23:50 -0700)
committerKeith OHara <k-ohara5a5a@oco.net>
Sat, 21 Sep 2013 05:27:18 +0000 (22:27 -0700)
scm/define-grobs.scm
scm/output-lib.scm

index 9838d2deeb87baa985b5a3f5d72a0fc422ee1a81..097ffdc370f25c92894f330d80aa1aef15d5b923 100644 (file)
         (positioning-done . ,ly:script-interface::calc-positioning-done)
         (right-padding . 0.5)
         (self-alignment-X . ,CENTER)
-        (self-alignment-Y . ,CENTER)
         (stencil . ,ly:text-interface::print)
         (vertical-skylines . ,grob::always-vertical-skylines-from-stencil)
         (Y-extent . ,grob::always-Y-extent-from-stencil)
         (X-offset . ,ly:self-alignment-interface::x-aligned-on-self)
-        (Y-offset . ,self-alignment-interface::y-aligned-on-self)
+        (Y-offset . ,(scale-by-font-size -0.6)) ; center on an 'm'
         (meta . ((class . Item)
                  (interfaces . (dynamic-interface
                                 dynamic-text-interface
index e04b298975cde419bfc931c2fbdd34e4d84d574e..33a03139dead37a6f1e6a09d3cf57259ef466e6e 100644 (file)
@@ -854,6 +854,11 @@ and duration-log @var{log}."
    the previous calculated offset value."
   prev-offset)
 
+(define-public (scale-by-font-size x)
+  (ly:make-unpure-pure-container
+    (lambda (grob)
+      (* x (magstep (ly:grob-property grob 'font-size 0))))))
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;