Question about customizing emmentaler font

classic Classic list List threaded Threaded
44 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Question about customizing emmentaler font

tisimst
I am developing a relatively easy python script to allow a person to tweak the default Emmentaler font as they desire without needing to mess with metafont, but by simply modifying the .OTF files in FontForge. I feel like I've gotten things mostly under control, but I am running into two issues that I just can't figure out.

The first has to do with the glyphs, which I tweaked a little, that come from the feta-alphabet subfonts (i.e., the time-signature numerals and the dynamics letters) which for some reason default to some other font for the numbers and letters and don't use those in my font at all:



The other issue appears with the arpeggio element and, I suspect, also with the trill element (though I haven't tried it explicitly), neither of which did I modify at all. As can be seen below, the glyph doesn't connect for a continuous look:



I have combed through the source code, but I couldn't find anything remotely obvious as to why this would be the case.  There also appears to be some kerning information for these glyphs that I think I've figured out, but not sure. Let's just say I am at a loss without some help from someone more intimately involved in the data required to render these glyphs (Han-wen? Werner?)

Now, why am I doing this?

Well, Although creating a new music notation font is definitely fun, there's another more important reason for this. I'm an engineer by trade with some manufacturing experience. I also love singing and playing the piano and computer programming, which makes using LilyPond quite enjoyable. As I have looked at the notation glyphs from older (and IMHO more beautiful) scores that are hand engraved and printed, there is an artistic aspect of the glyph designs that is still missing from Emmentaler. I am, in NO WAY, saying that Emmentaler is a poorly designed font. It is VERY NICE and I offer my highest regards to those who developed it. I know it took a ton of work.

Here's what's missing, and I don't know how metafont can capture this. Much of the focus of the design of Emmentaler font has been around the engraving part, which is HUGELY important. However, one thing we are forgetting (which may not be important to others, but I see as more critical) is the design AND FABRICATION of the punches that were used. Let me explain what I mean.

In order to cut metal, I have to have a tool that is sharp. How sharp? Well, that's relative I suppose, but let's assume I have a tool with knife-like edge that is hard enough to cut, say, the treble clef punch at a particular size. Now, this knife edge is only so sharp and, when cutting metal, isn't likely to be used like we would use a knife to carve wood. On the contrary, it would be used more like a chisel and would be able to create a smallest feature size, like for an interior corner. This is the most obvious kind of feature that most people don't think about when creating a classical-looking font. Exterior corners can be made sharp--no problem!--because I am not limited in size by the tool I'm using to create it. On the other hand, the interior corners are NEVER EVER EVER going to be sharp because I simply do not have a strong enough tool with a sharp enough edge to cut a perfectly sharp interior corner. Even nowadays with our advanced manufacturing processes, this is a difficult and very expensive challenge.

What this means: in order to have a truly authentic, classically engraved look, ALL interior corners should be rounded-ish, and the rounded-ness should remain optically constant (i.e., for emmentaler-26, the internal rounds would be optically the same size as those for emmentaler-11, but in the font itself, the rounds would be MUCH LARGER for emmentaler-11 than emmentaler-26 because the intended print size is MUCH SMALLER). I realize that using a traditional printing press with liquid ink will also contribute to the final size of these rounds, so what this "minimum feature size" should be is certainly debatable. I know that not everyone would agree with the need to add this feature, or with any of the other changes I've made, but take it for what it's worth. I think it would add a very nice touch to Emmentaler.

(phew!)

Wow, I didn't mean for all that to come out right now, but I thought I'd share some thoughts on this matter. I just LOVE LOVE LOVE LOVE the printed look of hand-engraved scores, and the Emmentaler font does great for the most part, but I don't feel like it quite captures some unmistakable hand-engraved features of the whole engraving/printing process needed to make computer-generated scores look more authentic and less computer-generated. There are even more features that I love, but would be most difficult to mimic, so I won't go there (yet).

So, back to my original reason for posting this. Can someone help me figure out why the dynamic letters and time-signature numbers won't appear like they should from my font and why the arpeggio elements won't line up? I know there's kerning involved, but I don't suspect that is the issue. I know the glyphs are there in the font, so that's also not the issue. Thanks for your help and keep up the excellent work!

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Urs Liska
Hi Abraham,

this sounds very interesting indeed. I'd be most interested in seeing
some comparison examples!

I can't help you at all with your actual question, but I have a question
of my own: Could you please make somewhat more clear what the use case
is exactly (in terms of your "users")?
My main question is why exactly you want ot edit the .odt files and not
the sources. I mean you are writing a Python script, so your users
wouldn't mess with Metafont anyway.
Of course Modifying the .otf is faster and doesn't require a LiylPond
build. But wouldn't it be a very nice touch if the modifications you
made could principally be integrated into LilyPond itself (or at least a
custom build).

Urs

Am 21.04.2014 19:19, schrieb tisimst:

> I am developing a /relatively/ easy python script to allow a person to tweak
> the default Emmentaler font as they desire without needing to mess with
> metafont, but by simply modifying the .OTF files in FontForge. I feel like
> I've gotten things /mostly/ under control, but I am running into two issues
> that I just can't figure out.
>
> The first has to do with the glyphs, which I tweaked a little, that come
> from the feta-alphabet subfonts (i.e., the time-signature numerals and the
> dynamics letters) which for some reason default to some other font for the
> numbers and letters and don't use those in my font at all:
>
> <http://lilypond.1069038.n5.nabble.com/file/n161702/timesignature-and-dynamics.png>
>
> The other issue appears with the arpeggio element and, I suspect, also with
> the trill element (though I haven't tried it explicitly), neither of which
> did I modify at all. As can be seen below, the glyph doesn't connect for a
> continuous look:
>
> <http://lilypond.1069038.n5.nabble.com/file/n161702/arpeggio-and-dynamics.png>
>
> I have combed through the source code, but I couldn't find anything remotely
> obvious as to why this would be the case.  There also appears to be some
> kerning information for these glyphs that I think I've figured out, but not
> sure. Let's just say I am at a loss without some help from someone more
> intimately involved in the data required to render these glyphs (Han-wen?
> Werner?)
>
> Now, why am I doing this?
>
> Well, Although creating a new music notation font is definitely fun, there's
> another more important reason for this. I'm an engineer by trade with some
> manufacturing experience. I also love singing and playing the piano and
> computer programming, which makes using LilyPond quite enjoyable. As I have
> looked at the notation glyphs from older (and IMHO more beautiful) scores
> that are hand engraved and printed, there is an artistic aspect of the glyph
> designs that is still missing from Emmentaler. I am, in NO WAY, saying that
> Emmentaler is a poorly designed font. It is VERY NICE and I offer my highest
> regards to those who developed it. I know it took a ton of work.
>
> Here's what's missing, and I don't know how metafont can capture this. Much
> of the focus of the design of Emmentaler font has been around the
> */engraving/* part, which is HUGELY important. However, one thing we are
> forgetting (which may not be important to others, but I see as more
> critical) is the design AND FABRICATION of the punches that were used. Let
> me explain what I mean.
>
> In order to cut metal, I have to have a tool that is */sharp/*. How sharp?
> Well, that's relative I suppose, but let's assume I have a tool with
> knife-like edge that is hard enough to cut, say, the treble clef punch at a
> particular size. Now, this knife edge is only so sharp and, when cutting
> metal, isn't likely to be used like we would use a knife to carve wood. On
> the contrary, it would be used more like a chisel and would be able to
> create a /smallest/ feature size, like for an interior corner. This is the
> most obvious kind of feature that most people don't think about when
> creating a classical-looking font. Exterior corners can be made sharp--/no
> problem!/--because I am not limited in size by the tool I'm using to create
> it. On the other hand, the interior corners are /*NEVER EVER EVER* going to
> be sharp/ because I simply do not have a strong enough tool with a sharp
> enough edge to cut a perfectly sharp interior corner. Even nowadays with our
> advanced manufacturing processes, this is a difficult and very expensive
> challenge.
>
> What this means: in order to have a truly authentic, classically engraved
> look, ALL interior corners should be rounded-ish, and the rounded-ness
> should remain optically constant (i.e., for emmentaler-26, the internal
> rounds would be optically the same size as those for emmentaler-11, but in
> the font itself, the rounds would be /MUCH LARGER/ for emmentaler-11 than
> emmentaler-26 because the intended print size is /MUCH SMALLER/). I realize
> that using a traditional printing press with liquid ink will also contribute
> to the final size of these rounds, so what this "minimum feature size"
> should be is certainly debatable. I know that not everyone would agree with
> the need to add this feature, or with any of the other changes I've made,
> but take it for what it's worth. I think it would add a very nice touch to
> Emmentaler.
>
> (phew!)
>
> Wow, I didn't mean for all that to come out right now, but I thought I'd
> share some thoughts on this matter. I just LOVE LOVE LOVE LOVE the printed
> look of hand-engraved scores, and the Emmentaler font does great for the
> most part, but I don't feel like it quite captures some unmistakable
> hand-engraved features of the whole engraving/printing process needed to
> make computer-generated scores look more authentic and less
> computer-generated. There are even more features that I love, but would be
> most difficult to mimic, so I won't go there (yet).
>
> So, back to my original reason for posting this. Can someone help me figure
> out why the dynamic letters and time-signature numbers won't appear like
> they should from my font and why the arpeggio elements won't line up? I know
> there's kerning involved, but I don't suspect that is the issue. I know the
> glyphs are there in the font, so that's also not the issue. Thanks for your
> help and keep up the excellent work!
>
> -Abraham
>
>
>
> --
> View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-customizing-emmentaler-font-tp161702.html
> Sent from the Dev mailing list archive at Nabble.com.
>
> _______________________________________________
> lilypond-devel mailing list
> [hidden email]
> https://lists.gnu.org/mailman/listinfo/lilypond-devel
>


_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Werner LEMBERG
In reply to this post by tisimst

> [1] [...] for some reason default to some other font for the numbers
> and letters and don't use those in my font at all: [...]
>
> [2] [...] the [trill] glyph doesn't connect for a continuous look:
> [...]

My guess for both problems is that due to your font modifications the
`LILY', `LILC', and `LILF' OpenType tables are screwed up, no longer
in sync with the actual data.  However, this is just a guess.

I fully agree with Urs that you should really work on the Metafont
level.  It's not rocket science!  Following the mf/README file in
calling mf2pt1 should give you some ideas how the font looks like
before it gets processed with FontForge.  Additionally, you can always
be sure that the three additional OpenType tables are OK.

> [...]. Exterior corners can be made sharp--/no problem!/--because I
> am not limited in size by the tool I'm using to create it. On the
> other hand, the interior corners are /*NEVER EVER EVER* going to be
> sharp/ because I simply do not have a strong enough tool with a
> sharp enough edge to cut a perfectly sharp interior corner. Even
> nowadays with our advanced manufacturing processes, this is a
> difficult and very expensive challenge.

Please provide (largely magnified) images that show exactly what you
mean.

> What this means: in order to have a truly authentic, classically
> engraved look, ALL interior corners should be rounded-ish, and the
> rounded-ness should remain optically constant (i.e., for
> emmentaler-26, the internal rounds would be optically the same size
> as those for emmentaler-11, but in the font itself, the rounds would
> be /MUCH LARGER/ for emmentaler-11 than emmentaler-26 because the
> intended print size is /MUCH SMALLER/).

This is not difficult to achieve.  If you are going to modify one
glyph at one size (ignoring the size issues for the beginning), thus
providing a template to work with, we will be certainly able to help
you with the missing details.


    Werner

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
In reply to this post by Urs Liska
Urs Liska wrote
Hi Abraham,

this sounds very interesting indeed. I'd be most interested in seeing
some comparison examples!

I can't help you at all with your actual question, but I have a question
of my own: Could you please make somewhat more clear what the use case
is exactly (in terms of your "users")?
My main question is why exactly you want ot edit the .odt files and not
the sources. I mean you are writing a Python script, so your users
wouldn't mess with Metafont anyway.
Of course Modifying the .otf is faster and doesn't require a LiylPond
build. But wouldn't it be a very nice touch if the modifications you
made could principally be integrated into LilyPond itself (or at least a
custom build).

Urs
Urs,

Good, valid questions, and thank you for your response. Let's see if I
can answer them satisfactorily:

1. The use case, at least as it is with me, would be for anyone
dabbling with their own notation fonts that want to use them without
needing to mess with source code. Granted, the work-flow is a little
bit hacked and definitely done on the command-line, so it takes some
courage for those less inclined to work there. Also, the method I'm
using allows the user to edit only the glyphs they want to change in
FontForge (usually the standard glyphs) and leave the other less-common
glyphs (like the ancient notations) as they are, but still available
(as opposed to what Gonville has done) if someone wants to mix notation
styles in a score, thus allowing for complete flexibility while
maintaining a comprehensive glyph set.

2. The reason I chose not to edit the metafont source is because it
appeared that metafont behaves more like a person with a pen writing
down the glyph (which absolutely has its place) and not a craftsman
with a chisel making a glyph punch and engraving the glyph in a metal
plate. I just don't know (probably because of my lack of experience) if
metafont can easily add the features I've identified. Now, I 100% agree
that it would be a very nice touch if it could be integrated into
LilyPond itself, even a totally custom build. I just don't know how to
make the changes in the metafont easily, but that, again, could be due
to my lack of experience.

Honestly, the differences between Emmentaler and Cadence (that's what
I'm calling my font so far) are pretty small. Some more obvious, others
more subtle. I've attached the FontForge's full-font print out to show
the 20pt sizes of both Emmentaler and Cadence.

Also attached are LilyPond's engraving of the first score in the
"essay", Suite I, BWV 1007. One version was laid out to match the PDF
version of the essay in its printed size (larger margins, staff-size of
15.3pt, etc.), but engraved with Emmentaler, which looks fabulous (I
always wondered why LilyPond's version was not included for comparison
in the essay), which looks fabulous.

The other two are the same score at 20pt size, still letter-size paper,
but default margins, one using Emmentaler and the other using Cadence.
This particular score looks fine with Cadence since it doesn't use any
dynamics or numerals (except for the fingering which actually comes
from a smaller optical Emmentaler font).

- I've tried to mimic the way that some styles blend the noteheads
together, particularly the half-note and whole note (similar to what
the Parnassus font does for MuseScore). They are a little larger, and a
little more round, but still NOT round or even elliptical.
- I've simplified the curves of the treble clef (it just always looked
a little too hand-written to me) and increased the length of the tail
of the bass clef.
- I've also increased the width of the natural accidentals (not
completely settled on this yet, but the default seems a little thin to
me) and increased the stems a little, adjusted the interior void of the
flat accidentals so that the stem has a more consistent taper and the
bulb is more voluptuous and black.
- Of course, I added consistent internal rounds to all the glyphs that
should have them (and not all SHOULD have them, by the way, if we
follow the engraving process).

If you get any tips as to solving my problems with the font, I'd
greatly appreciate it!

Regards,
Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
In reply to this post by Werner LEMBERG
Werner LEMBERG wrote
...

My guess for both problems is that due to your font modifications the
`LILY', `LILC', and `LILF' OpenType tables are screwed up, no longer
in sync with the actual data.  However, this is just a guess.

I fully agree with Urs that you should really work on the Metafont
level.  It's not rocket science!  Following the mf/README file in
calling mf2pt1 should give you some ideas how the font looks like
before it gets processed with FontForge.  Additionally, you can always
be sure that the three additional OpenType tables are OK.

...

Please provide (largely magnified) images that show exactly what you
mean.

...

This is not difficult to achieve.  If you are going to modify one
glyph at one size (ignoring the size issues for the beginning), thus
providing a template to work with, we will be certainly able to help
you with the missing details.


    Werner
Werner,

Thank you for your thoughts. I certainly can't throw out the
possibility that it is the LILY, LILC, and LILF tables. I might not
have configured them correctly.

Here's a couple of screenshots of what I mean by the internal corners
needing to be rounded. Thanks for your help! If you can help me know
how to add these rounds programmatically with metafont, I'll be a VERY
happy camper :)

Regards,
Abraham

eighth-rest-comparison.png (58K) <http://lilypond.1069038.n5.nabble.com/attachment/161713/0/eighth-rest-comparison.png>
treble-clef-comparison.png (85K) <http://lilypond.1069038.n5.nabble.com/attachment/161713/1/treble-clef-comparison.png>
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Werner LEMBERG

> Here's a couple of screenshots of what I mean by the internal
> corners needing to be rounded.

Thanks, your verbal description already has made clear what you want
to do.  I would rather like to see scanned images from real, printed
scores...

> If you can help me know how to add these rounds programmatically
> with metafont, I'll be a VERY happy camper :)

It can be realized quite easily with a macro: You have two
intersecting vectors (in and out), and you want to `connect' them with
a circle, where the circle's radius doesn't change with the font size.

However, some objects like the violin clef must be partly rewritten
since we currently use FontForge to remove the overlaps.  This is not
hard but tedious.  On the other hand, we would get rid of the
FontForge bugs related to overlapping removal, so it might be a useful
route to go.


    Werner

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Urs Liska
In reply to this post by tisimst
Hi,

sorry, it's too late to go into any detail. But also considering
Werner's comments I still have the question what kind of tool you are
aiming at: Do you want to provide end-users with a tool to tailor the
fonts to their individual needs or are you "only" trying to create a
modified font?

If it's the first one then of course editing the Metafont sources would
be quite some overhead (as you'd need a complete LilyPond building
environment). But if you're going for the font itself it would
definitely worth trying to go the Metafont route.
I _think_ (with my minimal experience) that the kind of modifications
you intend are done quite naturally with Metafont. This would probably
even give you the option to have it consistently parametrized.

Hope to get back to that issue soon.
Urs

Am 21.04.2014 20:47, schrieb tisimst:

> Urs,
>
> Good, valid questions, and thank you for your response. Let's see if I
> can answer them satisfactorily:
>
> 1. The use case, at least as it is with me, would be for anyone
> dabbling with their own notation fonts that want to use them without
> needing to mess with source code. Granted, the work-flow is a little
> bit hacked and definitely done on the command-line, so it takes some
> courage for those less inclined to work there. Also, the method I'm
> using allows the user to edit only the glyphs they want to change in
> FontForge (usually the standard glyphs) and leave the other less-common
> glyphs (like the ancient notations) as they are, but still available
> (as opposed to what Gonville has done) if someone wants to mix notation
> styles in a score, thus allowing for complete flexibility while
> maintaining a comprehensive glyph set.
>
> 2. The reason I chose not to edit the metafont source is because it
> appeared that metafont behaves more like a person with a pen writing
> down the glyph (which absolutely has its place) and not a craftsman
> with a chisel making a glyph punch and engraving the glyph in a metal
> plate. I just don't know (probably because of my lack of experience) if
> metafont can easily add the features I've identified. Now, I 100% agree
> that it would be a very nice touch if it could be integrated into
> LilyPond itself, even a totally custom build. I just don't know how to
> make the changes in the metafont easily, but that, again, could be due
> to my lack of experience.
>
> Honestly, the differences between Emmentaler and Cadence (that's what
> I'm calling my font so far) are pretty small. Some more obvious, others
> more subtle. I've attached the FontForge's full-font print out to show
> the 20pt sizes of both Emmentaler and Cadence.
>
> Also attached are LilyPond's engraving of the first score in the
> "essay", Suite I, BWV 1007. One version was laid out to match the PDF
> version of the essay in its printed size (larger margins, staff-size of
> 15.3pt, etc.), but engraved with Emmentaler, which looks fabulous (I
> always wondered why LilyPond's version was not included for comparison
> in the essay), which looks fabulous.
>
> The other two are the same score at 20pt size, still letter-size paper,
> but default margins, one using Emmentaler and the other using Cadence.
> This particular score looks fine with Cadence since it doesn't use any
> dynamics or numerals (except for the fingering which actually comes
> from a smaller optical Emmentaler font).
>
> - I've tried to mimic the way that some styles blend the noteheads
> together, particularly the half-note and whole note (similar to what
> the Parnassus font does for MuseScore). They are a little larger, and a
> little more round, but still NOT round or even elliptical.
> - I've simplified the curves of the treble clef (it just always looked
> a little too hand-written to me) and increased the length of the tail
> of the bass clef.
> - I've also increased the width of the natural accidentals (not
> completely settled on this yet, but the default seems a little thin to
> me) and increased the stems a little, adjusted the interior void of the
> flat accidentals so that the stem has a more consistent taper and the
> bulb is more voluptuous and black.
> - Of course, I added consistent internal rounds to all the glyphs that
> should have them (and not all SHOULD have them, by the way, if we
> follow the engraving process).
>
> If you get any tips as to solving my problems with the font, I'd
> greatly appreciate it!
>
> Regards,
> Abraham
>
> On Mon, Apr 21, 2014 at 11:29 AM, Urs Liska [via Lilypond]
> <[hidden email]> wrote:
>> Hi Abraham,
>>
>> this sounds very interesting indeed. I'd be most interested in seeing
>> some comparison examples!
>>
>> I can't help you at all with your actual question, but I have a
>> question
>> of my own: Could you please make somewhat more clear what the use
>> case
>> is exactly (in terms of your "users")?
>> My main question is why exactly you want ot edit the .odt files and
>> not
>> the sources. I mean you are writing a Python script, so your users
>> wouldn't mess with Metafont anyway.
>> Of course Modifying the .otf is faster and doesn't require a LiylPond
>> build. But wouldn't it be a very nice touch if the modifications you
>> made could principally be integrated into LilyPond itself (or at
>> least a
>> custom build).
>>
>> Urs
>>
>> Am 21.04.2014 19:19, schrieb tisimst:
>>
>>> I am developing a /relatively/ easy python script to allow a person
>> to tweak
>>> the default Emmentaler font as they desire without needing to mess
>> with
>>> metafont, but by simply modifying the .OTF files in FontForge. I
>> feel like
>>> I've gotten things /mostly/ under control, but I am running into
>> two issues
>>> that I just can't figure out.
>>>
>>> The first has to do with the glyphs, which I tweaked a little, that
>> come
>>> from the feta-alphabet subfonts (i.e., the time-signature numerals
>> and the
>>> dynamics letters) which for some reason default to some other font
>> for the
>>> numbers and letters and don't use those in my font at all:
>>>
>>>
>> <http://lilypond.1069038.n5.nabble.com/file/n161702/timesignature-and-dynamics.png>
>>>
>>> The other issue appears with the arpeggio element and, I suspect,
>> also with
>>> the trill element (though I haven't tried it explicitly), neither
>> of which
>>> did I modify at all. As can be seen below, the glyph doesn't
>> connect for a
>>> continuous look:
>>>
>>>
>> <http://lilypond.1069038.n5.nabble.com/file/n161702/arpeggio-and-dynamics.png>
>>>
>>> I have combed through the source code, but I couldn't find anything
>> remotely
>>> obvious as to why this would be the case.  There also appears to be
>> some
>>> kerning information for these glyphs that I think I've figured out,
>> but not
>>> sure. Let's just say I am at a loss without some help from someone
>> more
>>> intimately involved in the data required to render these glyphs
>> (Han-wen?
>>> Werner?)
>>>
>>> Now, why am I doing this?
>>>
>>> Well, Although creating a new music notation font is definitely
>> fun, there's
>>> another more important reason for this. I'm an engineer by trade
>> with some
>>> manufacturing experience. I also love singing and playing the piano
>> and
>>> computer programming, which makes using LilyPond quite enjoyable.
>> As I have
>>> looked at the notation glyphs from older (and IMHO more beautiful)
>> scores
>>> that are hand engraved and printed, there is an artistic aspect of
>> the glyph
>>> designs that is still missing from Emmentaler. I am, in NO WAY,
>> saying that
>>> Emmentaler is a poorly designed font. It is VERY NICE and I offer
>> my highest
>>> regards to those who developed it. I know it took a ton of work.
>>>
>>> Here's what's missing, and I don't know how metafont can capture
>> this. Much
>>> of the focus of the design of Emmentaler font has been around the
>>> */engraving/* part, which is HUGELY important. However, one thing
>> we are
>>> forgetting (which may not be important to others, but I see as more
>>> critical) is the design AND FABRICATION of the punches that were
>> used. Let
>>> me explain what I mean.
>>>
>>> In order to cut metal, I have to have a tool that is */sharp/*. How
>> sharp?
>>> Well, that's relative I suppose, but let's assume I have a tool
>> with
>>> knife-like edge that is hard enough to cut, say, the treble clef
>> punch at a
>>> particular size. Now, this knife edge is only so sharp and, when
>> cutting
>>> metal, isn't likely to be used like we would use a knife to carve
>> wood. On
>>> the contrary, it would be used more like a chisel and would be able
>> to
>>> create a /smallest/ feature size, like for an interior corner. This
>> is the
>>> most obvious kind of feature that most people don't think about
>> when
>>> creating a classical-looking font. Exterior corners can be made
>> sharp--/no
>>> problem!/--because I am not limited in size by the tool I'm using
>> to create
>>> it. On the other hand, the interior corners are /*NEVER EVER EVER*
>> going to
>>> be sharp/ because I simply do not have a strong enough tool with a
>> sharp
>>> enough edge to cut a perfectly sharp interior corner. Even nowadays
>> with our
>>> advanced manufacturing processes, this is a difficult and very
>> expensive
>>> challenge.
>>>
>>> What this means: in order to have a truly authentic, classically
>> engraved
>>> look, ALL interior corners should be rounded-ish, and the
>> rounded-ness
>>> should remain optically constant (i.e., for emmentaler-26, the
>> internal
>>> rounds would be optically the same size as those for emmentaler-11,
>> but in
>>> the font itself, the rounds would be /MUCH LARGER/ for
>> emmentaler-11 than
>>> emmentaler-26 because the intended print size is /MUCH SMALLER/). I
>> realize
>>> that using a traditional printing press with liquid ink will also
>> contribute
>>> to the final size of these rounds, so what this "minimum feature
>> size"
>>> should be is certainly debatable. I know that not everyone would
>> agree with
>>> the need to add this feature, or with any of the other changes I've
>> made,
>>> but take it for what it's worth. I think it would add a very nice
>> touch to
>>> Emmentaler.
>>>
>>> (phew!)
>>>
>>> Wow, I didn't mean for all that to come out right now, but I
>> thought I'd
>>> share some thoughts on this matter. I just LOVE LOVE LOVE LOVE the
>> printed
>>> look of hand-engraved scores, and the Emmentaler font does great
>> for the
>>> most part, but I don't feel like it quite captures some
>> unmistakable
>>> hand-engraved features of the whole engraving/printing process
>> needed to
>>> make computer-generated scores look more authentic and less
>>> computer-generated. There are even more features that I love, but
>> would be
>>> most difficult to mimic, so I won't go there (yet).
>>>
>>> So, back to my original reason for posting this. Can someone help
>> me figure
>>> out why the dynamic letters and time-signature numbers won't appear
>> like
>>> they should from my font and why the arpeggio elements won't line
>> up? I know
>>> there's kerning involved, but I don't suspect that is the issue. I
>> know the
>>> glyphs are there in the font, so that's also not the issue. Thanks
>> for your
>>> help and keep up the excellent work!
>>>
>>> -Abraham
>>>
>>>
>>>
>>> --
>>> View this message in context:
>> http://lilypond.1069038.n5.nabble.com/Question-about-customizing-emmentaler-font-tp161702.html
>>> Sent from the Dev mailing list archive at Nabble.com.
>>>
>>> _______________________________________________
>>> lilypond-devel mailing list
>>> [hidden email]
>>> https://lists.gnu.org/mailman/listinfo/lilypond-devel
>>>
>>
>>
>> _______________________________________________
>> lilypond-devel mailing list
>> [hidden email]
>> https://lists.gnu.org/mailman/listinfo/lilypond-devel
>>
>>
>> If you reply to this email, your message will be added to the
>> discussion below:
>> http://lilypond.1069038.n5.nabble.com/Question-about-customizing-emmentaler-font-tp161702p161703.html
>> To unsubscribe from Question about customizing emmentaler font, click
>> here.
>> NAML
>
>
> pr-Cadence-20-20pt.pdf (285K) <http://lilypond.1069038.n5.nabble.com/attachment/161707/0/pr-Cadence-20-20pt.pdf>
> suite1-bwv1007-emmentaler.pdf (190K) <http://lilypond.1069038.n5.nabble.com/attachment/161707/1/suite1-bwv1007-emmentaler.pdf>
> suite1-bwv1007-cadence.pdf (191K) <http://lilypond.1069038.n5.nabble.com/attachment/161707/2/suite1-bwv1007-cadence.pdf>
> suite1-bwv1007-essay.pdf (63K) <http://lilypond.1069038.n5.nabble.com/attachment/161707/3/suite1-bwv1007-essay.pdf>
> pr-Emmentaler-20-20pt.pdf (202K) <http://lilypond.1069038.n5.nabble.com/attachment/161707/4/pr-Emmentaler-20-20pt.pdf>
>
>
>
>
> --
> View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-customizing-emmentaler-font-tp161702p161707.html
> Sent from the Dev mailing list archive at Nabble.com.
>
>
>
> _______________________________________________
> lilypond-devel mailing list
> [hidden email]
> https://lists.gnu.org/mailman/listinfo/lilypond-devel
>


_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Jan Nieuwenhuizen
In reply to this post by tisimst
tisimst writes:

> Here's a couple of screenshots of what I mean by the internal corners
> needing to be rounded. Thanks for your help! If you can help me know
> how to add these rounds programmatically with metafont, I'll be a VERY
> happy camper :)

I'm not sure why, I'd be quite, quite surpised if you could produce
high-resolution scans that show these corners rounded.

Although I appreciate your looking into this, I think this is a mistake
to round these...

Greetings, Jan

--
Jan Nieuwenhuizen <[hidden email]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl 

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
Jan Nieuwenhuizen wrote
...

I'm not sure why, I'd be quite, quite surpised if you could produce
high-resolution scans that show these corners rounded.

Although I appreciate your looking into this, I think this is a mistake
to round these...
Jan,

See the collages I've attached that exemplify what I'm talking about. Some are from Barenreiter (even from the LilyPond essay), some from Breitkopf, some from Edition Peters. Sorry they all aren't the same resolution, but that's what I had to work with. They all show this artifact of rounded interior corners. I promise I'm not just making this up. They come from the punch manufacturing process AND the engraving process AND printing process. I think it would be quite nice to incorporate these somehow, but maybe that's just me, in which case I would do it for myself.

What I love about them is the eye doesn't really notice them when they are there, but I would argue that the eye DEFINITELY notices when they are NOT there, like with any of the major notation fonts today. If you need more examples, I'd be happy to supply them. Cheers!

-Abraham

breitkopf-essay-examples.png (79K) <http://lilypond.1069038.n5.nabble.com/attachment/161770/0/breitkopf-essay-examples.png>
edition-peters-examples.png (342K) <http://lilypond.1069038.n5.nabble.com/attachment/161770/1/edition-peters-examples.png>
barenreiter-examples.png (603K) <http://lilypond.1069038.n5.nabble.com/attachment/161770/2/barenreiter-examples.png>
barenreiter-essay-improvement-examples.png (127K) <http://lilypond.1069038.n5.nabble.com/attachment/161770/3/barenreiter-essay-improvement-examples.png>
barenreiter-essay-examples.png (122K) <http://lilypond.1069038.n5.nabble.com/attachment/161770/4/barenreiter-essay-examples.png>
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
In reply to this post by Urs Liska
Urs,

For now, I can't say that I'm intentionally trying to develop a way for others to create their own fonts for LilyPond, but that could be a result of my efforts.

Werner,

I've been reading through metafont tutorials and such and it's quite cryptic to me, but if you know how to add these rounds in arbitrary locations, I'd love to know how.

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
In reply to this post by Werner LEMBERG
Werner,

By the way, I did look more closely at the LILC table and, sure enough, the bounding box data for the arpeggio and trill_element glyphs were pretty far off. I adjusted the values and they seem to be working now.

The one thing that still puzzles me is why the dynamics letters won't show up when they are part of the font. Are you aware of a place in the source code that defaults to some fallback font if something is wrong with the notation font for these glyphs? Based on my first images, it looks like the fallback is a basic sans font, but I couldn't find anything. Thanks for your help.

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Werner LEMBERG
In reply to this post by tisimst

> [...]  They all show this artifact of rounded interior corners.  I
> promise I'm not just making this up.  They come from the punch
> manufacturing process AND the engraving process AND printing
> process.  I think it would be quite nice to incorporate these
> somehow, but maybe that's just me, in which case I would do it for
> myself.
>
> What I love about them is the eye doesn't really notice them when
> they are there, but I would argue that the eye DEFINITELY notices
> when they are NOT there, like with any of the major notation fonts
> today. If you need more examples, I'd be happy to supply
> them. Cheers!

Especially this example

  http://lilypond.1069038.n5.nabble.com/attachment/161770/2/barenreiter-examples.png

shows very well that what you want to achieve is not related to the
font itself: It's definitely one level `later', so to say: The round
edges, which can be clearly seen, are not only affecting the clef
outline but *every intersection* of lines, including bar lines!

In other words, what you need is a postprocessor that walks over the
whole lilypond output and changes every intersection to have rounded
edges.  For example, you need to emulate that effect also for slurs
that cross staff lines.

Unfortunately, I haven't found something in the internet (probably not
knowing the proper keywords to search for).  Here you can see a `path
smoother' in action:

  http://pyx.sourceforge.net/examples/drawing2/smoothed.html

And exactly this operation should be applied to all edges (and near
edges) in the image.


     Werner

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Jan Nieuwenhuizen
In reply to this post by tisimst
tisimst writes:

> Your skepticism is not uncommon. See the collages I've attached that
> exemplify what I'm talking about. Some are from Barenreiter (even from
> the LilyPond essay), some from Breitkopf, some from Edition
> Peters.

Thanks.  It seems that you're spot-on with respect to the eight rest
inner corner!  However, it seems to me that the added roundings in the
G-clef are overdone?

> What I love about them is the eye doesn't really notice them when they
> are there, but I would argue that the eye DEFINITELY notices when they
> are NOT there, like with any of the major notation fonts today.

Yes, I agree.  We took quite some care to add roundings, apparently we
missed some.  It is debatable whether the roundings on the G-clef should
be added to the font, though.

Greetings,
Jan

--
Jan Nieuwenhuizen <[hidden email]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl 

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
In reply to this post by Werner LEMBERG
Werner LEMBERG wrote
Especially this example

  http://lilypond.1069038.n5.nabble.com/attachment/161770/2/barenreiter-examples.png

shows very well that what you want to achieve is not related to the
font itself: It's definitely one level `later', so to say: The round
edges, which can be clearly seen, are not only affecting the clef
outline but *every intersection* of lines, including bar lines!

In other words, what you need is a postprocessor that walks over the
whole lilypond output and changes every intersection to have rounded
edges.  For example, you need to emulate that effect also for slurs
that cross staff lines.

Unfortunately, I haven't found something in the internet (probably not
knowing the proper keywords to search for).  Here you can see a `path
smoother' in action:

  http://pyx.sourceforge.net/examples/drawing2/smoothed.html

And exactly this operation should be applied to all edges (and near
edges) in the image.
Werner,

You are exactly right about the intersections. I (and maybe only I) really like the look of it. That would be a very interesting plugin! It's not really something I was going to tackle (yet) because of the post-processing challenge on the postscript level (at least for me). I'm sure someone could figure it out more quickly than me. I would think this could at least be applied to the font itself so the glyphs had this feature.

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
In reply to this post by Jan Nieuwenhuizen
Jan Nieuwenhuizen wrote
... It seems that you're spot-on with respect to the eight rest
inner corner!  However, it seems to me that the added roundings in the
G-clef are overdone?
Indeed, the amount of roundness is debatable. What's funny about this is that I didn't actually create the rounds based on what I saw in any scan. I simply thought about what's logically possible when metalworking by hand, and, in the FontForge examples above (of the treble clef and the eighth rest), I designed it to have a real (printed) radius of approximately 0.005 inches at 20pt size. This is pretty small in real life, especially if you are doing things by hand, but possible for a skilled craftsman and engraver.

I'm sure you knew this already, but it can look overdone when some rounds visually stand out more than others because of the angle of the two lines that are being smoothing out. The more acute the angle, the more whitespace gets filled in, so it can look imbalanced if the angle must be non-perpendicular, but by increasing the round on the opposite, obtuse side it can be made to look more consistent. This is why, I think, it is more common to see, for example, the downward swoosh of the treble clef to pass through the lower curl at more of a perpendicular angle so that these rounds are more uniform at all the intersections, like in my example above.

Jan Nieuwenhuizen wrote
...  We took quite some care to add roundings, apparently we
missed some.  It is debatable whether the roundings on the G-clef should
be added to the font, though.
I believe you did and I am NOT saying that Emmentaler is a bad font or that it has to be changed. Please understand that I am not attacking your work. I may be the only one who likes this, and that is really okay with me. Whether or not this kind of thing needs to be a feature of the Emmentaler font wasn't the intent of my original line of questions, but I would certainly vote for it, if it wasn't too challenging to implement in Metafont. Either way, I'd like to create and use a font that has this feature. That's all. I didn't intend to push to have this be a feature of the default font. It would become part of my own "house style", if you will.

I have shown it to others musicians at my school and they seem to really like it (they REALLY love the output of LilyPond compared to the usual Finale and Sibelius, but that's getting off topic). Anyways, thank you for your comments and thoughts. I appreciate all you guys do to make this a superb piece of software! Any thoughts as to why some of the glyphs don't appear at all, would be very much appreciated.

Regards,
Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Han-Wen Nienhuys-3
On Wed, Apr 23, 2014 at 6:02 PM, tisimst <[hidden email]> wrote:

> Jan Nieuwenhuizen wrote
>> ... It seems that you're spot-on with respect to the eight rest
>> inner corner!  However, it seems to me that the added roundings in the
>> G-clef are overdone?
>
> Indeed, the amount of roundness is debatable. What's funny about this is
> that I didn't actually create the rounds based on what I saw in any scan. I
> simply thought about what's logically possible when metalworking by hand,
> and, in the FontForge examples above (of the treble clef and the eighth
> rest), I designed it to have an real (printed) radius of approximately 0.005
> inches at 20pt size. This is pretty small in real life, especially if you
> are doing things by hand, but possible for a skilled craftsman and engraver.

Thanks for bringing this up! You are completely right; we never
considered the inside corners, and did the outside corners on the
assumption that they are fragile and would become rounded through the
violence of punching. Werner is right that you'd have to do a global
postprocessing pass to really do all all the line intersections, but
rounding inside corners in the font is a reasonable first
approximation.

As for the missing characters: my recollection is faded, but I think
we do some special fiddling to select emmentaler for the alphabetic
chars. Is your tweaked font also called emmentaler?






> I'm sure you knew this already, but it can look overdone when some rounds
> visually stand out more than others because of the angle of the two lines
> that are being smoothing out. The more acute the angle, the more whitespace
> gets filled in, so it can look imbalanced if the angle must be
> non-perpendicular, but by increasing the round on the opposite, obtuse side
> it can be made to look more consistent. This is why, I think, it is more
> common to see, for example, the downward swoosh of the treble clef to pass
> through the lower curl at more of a perpendicular angle so that these rounds
> are more uniform at all the intersections, like in my example above.
>
>
> Jan Nieuwenhuizen wrote
>> ...  We took quite some care to add roundings, apparently we
>> missed some.  It is debatable whether the roundings on the G-clef should
>> be added to the font, though.
>
> I believe you did and I am NOT saying that Emmentaler is a bad font or that
> it has to be changed. Please understand that I am not attacking your work. I
> may be the only one who likes this, and that is really okay with me. Whether
> or not this kind of thing /needs/ to be a feature of the Emmentaler font
> wasn't the intent of my original line of questions, but I would certainly
> vote for it, if it wasn't too challenging to implement in Metafont. Either
> way, I'd like to create and use a font that has this feature. That's all. I
> didn't intend to push to have this be a feature of the default font. It
> would become part of my own "house style", if you will.
>
> I have shown it to others musicians at my school and they seem to really
> like it (they REALLY love the output of LilyPond compared to the usual
> Finale and Sibelius, but that's getting off topic). Anyways, thank you for
> your comments and thoughts. I appreciate all you guys do to make this a
> superb piece of software! Any thoughts as to why some of the glyphs /don't
> appear at all/, would be very much appreciated.
>
> Regards,
> Abraham
>
>
>
> --
> View this message in context: http://lilypond.1069038.n5.nabble.com/Question-about-customizing-emmentaler-font-tp161702p161791.html
> Sent from the Dev mailing list archive at Nabble.com.
>
> _______________________________________________
> lilypond-devel mailing list
> [hidden email]
> https://lists.gnu.org/mailman/listinfo/lilypond-devel



--
Han-Wen Nienhuys - [hidden email] - http://www.xs4all.nl/~hanwen

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Werner LEMBERG

> Werner is right that you'd have to do a global postprocessing pass
> to really do all all the line intersections, but rounding inside
> corners in the font is a reasonable first approximation.

Is it?  I'm not sure whether changing the font outlines this way is
beneficial, especially since the effect Abraham is envisioning is
definitely bound to the printing resolution.


    Werner

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
Werner LEMBERG wrote
Is it?  I'm not sure whether changing the font outlines this way is
beneficial, especially since the effect Abraham is envisioning is
definitely bound to the printing resolution.
Werner,

Isn't that the point of using optically scaled fonts in LilyPond? I fully intend to have these rounds optically sized, depending on the intended font size, be it 11, 13, 14, 16, 18, 20, 23, or 26pt, so Cadence-11 would have much larger rounds than Cadence-26.

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

tisimst
This post was updated on .
In reply to this post by Han-Wen Nienhuys-3
Han-Wen Nienhuys-5 wrote
Thanks for bringing this up! You are completely right; we never
considered the inside corners, and did the outside corners on the
assumption that they are fragile and would become rounded through the
violence of punching. Werner is right that you'd have to do a global
postprocessing pass to really do all all the line intersections, but
rounding inside corners in the font is a reasonable first
approximation.

As for the missing characters: my recollection is faded, but I think
we do some special fiddling to select emmentaler for the alphabetic
chars. Is your tweaked font also called emmentaler?

--
Han-Wen Nienhuys - [hidden email] - http://www.xs4all.nl/~hanwen
You made a good assumption about the external corners, particularly because the engraving is done by hand. In this case, it's not necessarily going to be the punch that is the culprit since it could have sharp external corners, but more likely the way that the plate actually responds to the punch.

When I put, for example, Cadence-20.otf to actual use, yes, I rename it to emmentaler-20.otf so that I don't have to mess with LilyPond itself and the font can be found easily, similar to how Gonville does it (except it doesn't seem to have this issue...).

-Abraham
Reply | Threaded
Open this post in threaded view
|

Re: Question about customizing emmentaler font

Werner LEMBERG
In reply to this post by tisimst
>> Is it?  I'm not sure whether changing the font outlines this way is
>> beneficial, especially since the effect Abraham is envisioning is
>> definitely bound to the printing resolution.
>
> Isn't that the point of using optically scaled fonts in LilyPond?

Yes, but...

> I fully intend to have these rounds optically sized, depending on
> the intended font size, be it 11, 13, 14, 16, 18, 20, 23, or 26pt,
> so Cadence-11 would have much larger rounds than Cadence-26.

we would need to set up another font instance for posters and the
like, without any edge smoothing...  I still think that a
postprocessor is the way to go.


    Werner

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
123