[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