[Lilypond] Font sizes

Recommendations concerning notation and publishing software in a non-partisan environment.
Knut
Posts: 867
Joined: 05 Oct 2015, 18:07
Location: Oslo, Norway

Re: [Lilypond] Font sizes

Post by Knut »

tisimst wrote:I think you mean 0.13 spaces.
Yes of course. Sorry.
tisimst wrote:LilyPond's default (20pt font size) is 0.1 spaces, but ranges from 0.1514 spaces @ 11pt to 0.0864 spaces @ 26pt.
Hmm, it sounds like Lilypond actually does scale the line thickness with the staff size, but increases the value somewhat to compensate? After all, 0.1514 spaces (0,91pt) @ 11pt staff hight is pretty thick, and I don't understand why you would increase the line thickness beyond the setting for 20pt if the size of each unit didn't change with the staff size.
Knut
Posts: 867
Joined: 05 Oct 2015, 18:07
Location: Oslo, Norway

Re: [Lilypond] Font sizes

Post by Knut »

OCTO wrote:I am amazed how Lilypond treats fonts. I think it is close to what SCORE did.
I hope that new Sib/Fin/*Steinberg will be able to implement it in the future versions.
AFAIK Score didn't use fonts at all, which would make it entirely flexible with regard to relative line width at different sizes. What Lilypond is doing is sort of the best available solution within the realm of current font technology. It is, however, an extremely laborious solution for designers of large scale music fonts like Bravura, considering you would effectively have to design 8 different versions of the same font before you would be able to support this feature entirely. In a font with thousands of glyphs, this would be an enormous undertaking.
dspreadbury
Posts: 32
Joined: 05 Oct 2015, 10:57

Re: [Lilypond] Font sizes

Post by dspreadbury »

Knut wrote: It is, however, an extremely laborious solution for designers of large scale music fonts like Bravura, considering you would effectively have to design 8 different versions of the same font before you would be able to support this feature entirely. In a font with thousands of glyphs, this would be an enormous undertaking.
Absolutely right. The only reason this is feasible in LilyPond is because of its use of the Metafont format (another of Don Knuth's amazing inventions after TeX, which you can read a bit about here: https://en.wikipedia.org/wiki/Metafont). However, Metafont has never really gained much support outside of the world of FOSS. I have tried (and failed) to get my own head around it, but it would in theory be possible for somebody to design a font of the scope of Bravura and generate multiple versions for different optical sizes using Metafont.
User avatar
tisimst
Posts: 416
Joined: 08 Oct 2015, 17:57
Location: UT, USA
Contact:

Re: [Lilypond] Font sizes

Post by tisimst »

You are right, Daniel, but to be fair, you don't have to design 8 different versions for them to work with LilyPond. Of all the alternative fonts I've created (or re-purposed) for LilyPond, guess how many actually have multiple optical designs? None. That's right! Right now LilyPond is coded to expect 8 variants, so the set of files in each "font" are essentially identical. However, I've never been completely satisfied with that, thus I am in the (albeit slow) process of creating optical designs programmatically and I'm off to a good start. Still more work to be done, though. I could add a function or two that would allow me to use just a single font file and that would eliminate a lot of redundant data, but we'll see how quickly I can get the optical designs done.

One thing that many font editors support is called Multiple-Master (MM) designs which, after creating only 2 designs (usually at the extreme ends of the spectrum, like a "Display" and "Caption" optical sizes or "Black" and "Extra Light" weights, but can really be any two designs) with the same number of points, then allows you to create many others by interpolation in various ways.
Music Typeface Designer & Engraver - LilyPond | Sibelius | Finale | MuseScore | Dorico | SMuFL | Inkscape | FontForge
Knut
Posts: 867
Joined: 05 Oct 2015, 18:07
Location: Oslo, Norway

Re: [Lilypond] Font sizes

Post by Knut »

tisimst wrote:You are right, Daniel, but to be fair, you don't have to design 8 different versions for them to work with LilyPond.
You do if you want to support Lilypond's automatic interchange of optical font styles.
tisimst wrote:One thing that many font editors support is called Multiple-Master (MM) designs which, after creating only 2 designs (usually at the extreme ends of the spectrum, like a "Display" and "Caption" optical sizes or "Black" and "Extra Light" weights, but can really be any two designs) with the same number of points, then allows you to create many others by interpolation in various ways.
The MM format is indeed a big help when designing derivative font styles. However, with the extremely broad scope of the two currently available SMuFL compliant fonts, even creating two versions would be a pretty daunting task. The limited scope of the Lilypond fonts, on the other hand, makes creating many derivative styles much more manageable.
User avatar
tisimst
Posts: 416
Joined: 08 Oct 2015, 17:57
Location: UT, USA
Contact:

Re: [Lilypond] Font sizes

Post by tisimst »

Knut wrote:
tisimst wrote:You are right, Daniel, but to be fair, you don't have to design 8 different versions for them to work with LilyPond.
You do if you want to support Lilypond's automatic interchange of optical font styles.
To an extent, you are right. To be able to use multiple design sizes regardless of what your normal staff size is, then you are kind of right. On the other hand, having 8 styles is a totally arbitrary choice. The developers could have settled with fewer styles and I doubt anyone would even notice. I think they could have created many more styles just as easily, but I guess it seemed that 8 was a good balance. I see no reason why you couldn't get away with only two design sizes for most cases, like with Bravura. This already works in LilyPond with a small adjustment to the function you use to choose the fonts. The adjustment would allow the user to specify a single or multiple specific design sizes and LilyPond would work with just those. If unspecified, it would just default back to what it currently does.
Music Typeface Designer & Engraver - LilyPond | Sibelius | Finale | MuseScore | Dorico | SMuFL | Inkscape | FontForge
User avatar
OCTO
Posts: 1742
Joined: 05 Oct 2015, 06:52
Location: Sweden

Re: [Lilypond] Font sizes

Post by OCTO »

As far as I understand, LilyPond can utilize different fonts for each staff? If staff reduced, LilyPond uses automatically the smaller font size?
Freelance Composer. Self-Publisher.
Finale 27.3 • Sibelius 2023.5• MuseScore 4+ • Logic Pro X+ • Ableton Live 11+ • Digital Performer 10+ /// MacOS Monterey (secondary in use systems: Fedora 35, Windows 10)
User avatar
tisimst
Posts: 416
Joined: 08 Oct 2015, 17:57
Location: UT, USA
Contact:

Re: [Lilypond] Font sizes

Post by tisimst »

That's correct.
Music Typeface Designer & Engraver - LilyPond | Sibelius | Finale | MuseScore | Dorico | SMuFL | Inkscape | FontForge
Post Reply