lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Font questions about absolute


From: Aaron Hill
Subject: Re: Font questions about absolute
Date: Sat, 11 May 2019 14:23:42 -0700
User-agent: Roundcube Webmail/1.3.8

On 2019-05-11 12:53 pm, Reggie wrote:
Aaron wow yes I understand the maths perfectly that's my area. Thank you your answer is perfect. But as I understand the Gould engraving book and other font "normal" standards, how does one handle font size then regardless of staff size and paperr? For example, let's say a publshing house wants "all tempo marks must be 14pt roman" or "all expressive font must be 12pt in parts and 14pt in score"? If the size of your paper and staff size could change depending on the size of ensemble, would you then still use absolute
font sizes to align with explicit needs for font rules? Or would you
personally eye ball font size and use relative and get it close enough to absolute font size. I don't understand the best practice if you want to in the end have a certain set point size for certain markings with variable
paper sizes.

I cannot comment on how to organize projects for clients/publishing houses, as all of my work is largely personal. (Well, technically, it is for my church; but I have had the final say on stylistic issues like staff and font size.)

But providing you have determined what staff size you intend to use, everything else should essentially be fixed. That should give you a basis to ensure that any elements that need a strict font size can have it.

If the staff size is variable between different outputs, you may have to use the math I showed if you are trying to get an exact match. Consider the following:

%%%%
\version "2.19.82"

#(set-global-staff-size 14)

#(define (defaultpaper-text-font-size)
  (module-ref
    (ly:output-def-scope (ly:parser-lookup '$defaultpaper))
    'text-font-size))

#(define (abs->font-size size)
  (magnification->font-size
    (/ size (defaultpaper-text-font-size))))

\score {
  <<
    \new Staff {
      b'4^\markup { "qxb" \abs-fontsize #12 "qxb" }
    }
    \new Lyrics \lyricmode {
      \markup { "qxb" \abs-fontsize #20 "qxb" } 4
    }
  >>

  \layout {
    \context {
      \Staff
      \override TextScript.font-size = #(abs->font-size 12)
    }
    \context {
      \Lyrics
      \override LyricText.font-size = #(abs->font-size 20)
    }
  }
}
%%%%

You should see identically sized "qxb" text even when you change the global staff size.

NOTE: Manual use of things like make-pango-font-tree introduce the possibility that text-font-size is not an accurate value. Providing one is following the recommended practice of setting the scaling factor, then things should work.

Also NOTE: Setting the fontSize context property will impact the results, since that applies in addition to the font-size property of a grob.


-- Aaron Hill



reply via email to

[Prev in Thread] Current Thread [Next in Thread]