Need advice on Font for music

I would very much appreciate some advice and general guidelines (or some relevant links to good documentation sources) to create a font with the symbols used in music (notes, rests, clefs, etc.). I created a preliminary font just to practise, so I concentrated more on how to create the glyphs, the metrics, and about how to use it in my program. Now I would like to proceed to the cretion of ‘the production font’ but I have a lot of doubts and questions. Any help and advice will be greately appreciated. Here are my main concerns:

  1. I need a lot of symbols (more than 400). How many glyphs can be allocated in a font? Should I split the collection into several fonts or it would be better to have a single font with all symbols?

  2. Should it be Unicode font or Symbol font? Does this matters? (the symbols will not be used in a word processor but managed by music notation editors and renderization programs)

  3. The font should be usable in ALL platforms. Any recommendations about? Should it be TrueType or OpenType?

Thank you very much,
Regards,

Cecilio

Hello Cecilio

Some observations:

  1. Since I don’t know how to use a notation font I haven’t saved many that have come my way but I have a couple of references for you to compare:

Font Name: Lassus by David Rakowski has 178 glyphs is a standard Mac and Microsoft platform.

Font name: Notation by [email protected] (1998) - not sure of link. 135 glyphs. Uses standard Mac/Microsoft platforms.

Font name: Musical Symbols by Corel Corp. (1992) 176 glyphs. Uses Microsoft Symbol platform and maps start at 61472.

Font name: Musitone by Robert Allgeyer (admitted amateur) (2002). Describes very complicated process (8 steps) to construct a dotted eight note at pitch A4 sharp. “Font may be used to insert a small amount of music notation in word processing documents.” Setup with Mac Roman, Microsoft Unicode and Unicode 2.0 platforms.

Font name: Notes repackaged by Arts & Letters. 213 glyphs. Standard platforms.

Font name: WinJammer Score by WinJammer Software Ltd (1996). Only 80 glyphs.

  1. A better choice would be to Google for “musical fonts”. I found a whole bunch of references to commercial and free fonts, machine- and hand-written appearing. Check them out! They will indicate what’s expected - in answer to your specific questions.

  2. Seems like these have to be/should be used in concert with a notation and printing system. Does that dictate how the font has to be organized? How does a notation system work?

Dick Pape

Here are my own answers to your questions. I only have limited experience with music fonts, and then only for simple percussion music, though it was great fun!

  1. I need a lot of symbols (more than 400). How many glyphs can be allocated in a font?

Thousands.

Should I split the collection into several fonts or it would be better to have a single font with all symbols?

My own preference would be for a single font.

  1. Should it be Unicode font or Symbol font?

I would use a Unicode font.

Does this matters? (the symbols will not be used in a word processor but managed by music notation editors and renderization programs)

I am unsure about this. However, I think that a Unicode font may be safer, but that is just a feeling, it may not be correct.

  1. The font should be usable in ALL platforms. Any recommendations about?

It would be best to place your characters in the Private Use Area. There are some notes about the Private Use Area in the following thread, particularly the fourth posting within the thread.

http://forum.high-logic.com:9080/t/need-an-opinion-about-extended-character-fonts/919/1

Should it be TrueType or OpenType?

TrueType. Not all systems can handle OpenType glyph substitution.


If anyone is interested in my experiments with percussion music fonts then the following may be of interest.

Part of the following web page is about those music fonts, about two-thirds of the way down the page.

http://www.users.globalnet.co.uk/~ngo/font7001.htm

Those glyphs, and some further glyphs, are in my Quest text font, within the Private Use Area.

http://www.users.globalnet.co.uk/~ngo/fonts.htm

William Overington

Hello Dick,

Thank you for your time and for trying to help me.

How does a notation system work?

Well, to render a music score the font is used just to generate the symbols and render them at specific positions on the page. The process is similar to that of rendering text but instead of writting lines of text you have to write the symbols one by one at any page postion and, previously, compute the position of each symbol. Appart of symbols generated by using a font, you also have to render lines and other graphical objects. Also text, for titles, lyric, etc.

Seems like these have to be/should be used in concert with a notation and printing system. Does that dictate how the font has to be organized?

The point is that it is not necessary to relate font symbol codes to keyboard keys. It is the music notation program who decides which symbols to use. So there is no need for organizing the glyphs in any special ordering. And yes, the font have to be used in concert with a notation and printing system. All this is also a problem from the standarization point of view.

Unicode people have allocated a certain amount of codes for music symbols but not all needed symbols are there. You could see, for example, http://www.lib.virginia.edu/dmmc/Music/UnicodeMusic/ . But there is nothing which requires that one foundry’s implementation of a music font must correspond to any other. Unicode is a recommendation, but nothing requires a foundry to follow it.

So, in practise, there are no two music fonts with the symbols arranged in the same order and using the same codes. Each music software maker design its own fonts and decides how they are organized. Another important difference with alphabetical fonts is that music renderization programs need to have a detailed description of the metrics (sizes, certain gyph features position points, etc.) of the glyphs in order to be able to correctly position the lines (i.e. stems), other glyphs, etc. So you don’t have as many freedom to use music fonts as with word processors. And this is another reason to explain why each music software maker uses its own fonts.

To design a music font the most importan factors (in my very ammateur oppinion) are the font metrics: the glyphs must keep proportions to be used with a given staff lines distance; also, you must take into account that glyphs should render acceptable when using low zooming factors; for example, to display half music score page in a window; in these cases staff lines distance can be as small as four or five pixels and a notehead must render acceptable. Appart of this, you have all the freedom to design the font and allocate the glyphs at you own.

If you are interested in music fonts there is a webpage listing many different music fonts: http://www.music-notation.info/en/compmus/musicfonts.html



And all this bring me to my initial questions. My problem is that I have to design a music font to be used in my programs (You could visit my web site to see the software: www.lenmus.org) . Having to design a font is just an accident to me. I will, probably, never design another font. I wouldn’t like to spend too much time on this task. For the first attempt, just to start, I allocated the glyphs in alphabetical character codes positions and I didn’t care about other matters, as my main concern was with the music renderization algorithms.

Now, with all algorithmic issues more or less solved, I would like to redesing the font, add all the missing characters and do it as better as possible to avoid problems to port the software to other platforms: Is there something that I should take into account not to have problems when porting a font to other platform? (any, in general, not a music font)

Also I would like to avoid future compatibility problems: Should I use Open Type or True Type? Does it matters? What would you recommend me?

As I need a lot of symbols (more than 400), should I split the collection into several fonts or it would be better to have a single font with all symbols? How many glyphs can be allocated in a font? Is it easy to deal with so many symbols in a font?

Well, as you can see, I am an circumstancial font designer how knows nothing about font internals. That’s why I would appreciate very much any advice from more experience people.

Thanks in advance.

Regards,

Cecilio

Hi William ,

Thank you for your post. I have just seen it as I was answering Dick. I will insvestigate the issue of the “Private Use Area” (what is this?) and also vist your links.

I will answer your post then.

Kind regards,

Cecilio.

Hi Cecilio

  1. Thanks for the detail background. It was very interesting and informative. It is much more complicated than I had expected. but there are common approaches with other languages, such as grouping together a base + overmark + undermark + sidemark.

  2. My own thoughts would be to make sure your 400 glyphs are not duplicates in some fashion. The “Proposal for Encoding Western Music Symbols in ISO/IEC 10646” suggested 220 characters are needed.

Looks like at least the ornament strokes would have to be added to that list and the text letters (0-9, etc) and they state there are more things: “characters which have some specialized meaning in music but are found in other character sets, i.e. numbers for time signatures and figured basses or letters for section labels and Roman numeral harmonic analysis, etc.” So I agree you could balloon up very quickly.

This list of 220 glyphs would seemingly be the place to start matching your needs to their recommendation remembering that complex glyphs can be formed by putting together some parts. (ref “7. WESTERN MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE = WESTERN MUSICAL SYMBOL NOTEHEAD BLACK + WESTERN MUSICAL SYMBOL STEM + FLAG FIVE”)

These combination or “pre-composed” notes make the annotator’s life easier, and the font designer’s life also.

How did you solve this in your software? It might be too late to change what works.

  1. As you and the document say mapping sequence of the glyphs doesn’t matter I would use the proposal’s order (not necessarily their Unicode numbers) as a starting point.

  2. Your notes should have a consistent design. One of your references showed a notation font built into or around a standard text font Times so that someone could go in and out of text and show notation without losing design continuity. This is a good idea as you will also need latin characters accompanying the notation.

I’ve seen examples of traditional notation and hand-written notation and they appear very much different. You should pick a font shape and design to it. From looking at your composer program it looks like you would use a more traditional font style.

  1. Whether to use a Symbol or Unicode font I don’t know if it matters. (Emphasis on “I don’t know”). You would use the notation characters independent of the text characters. Making them separate (including minimal text) would divorce the notation design from the text design. In my experience, you could use the same font for both text and notation or not. Someone else will surely correct this.

  2. Now for more direct answers to your questions.
    a. Can your software run on all platforms?
    b. True Type is pretty standard across all platforms. Use it.
    c. Font Creator only works with True Type fonts. Start there.
    d. If your software is the only thing to use this font, it doesn’t matter how it’s organized. You don’t need standardization if you are the only one.

Good luck.

One symbol I saw is appropriate now: “0001 xx6E WESTERN MUSICAL SYMBOL LONGA PERFECTA REST”

Dick

Firstly, I do not know a lot about musical notation. However, I do find this project fascinating.

Unicode has the following.

http://www.unicode.org/charts/PDF/U1D100.pdf

That is downloadable from the following web page.

http://www.unicode.org/charts/symbols.html

I do not know how that relates to those contained in the 1998 proposal at http://www.lib.virginia.edu/dmmc/Music/UnicodeMusic/ yet I did find MUSICAL SYMBOL LONGA PERFECTA REST at U+1D1C1 which does not seem to relate to the 6E ending mentioned by Dick, though maybe it is the same chart after due process of sorting it all out for encoding and publication.

Anyway, if it turns out that the Unicode chart is the result of that proposal and does what you want then the Unicode chart is the one to use. However, if the system has problems with Unicode characters from the higher planes then you could perhaps consider placing a set of glyphs in the same order into the Private Use Area so that you could get round the problems. If you need any extra glyphs not in the Unicode document then you could add them into the Private Use Area. For letters and digits, just use regular Unicode positions unless there is some special reason not to do so: if there is a special reason then a look at the mathematical symbols in Unicode might be of use.

For example, the Math Alphanumeric symbols listed in the Letterlike Symbols section of the http://www.unicode.org/charts/symbols.html webpage.

http://www.unicode.org/charts/PDF/U1D400.pdf

William

Hi, Dick and William,

Thank you very much in deed for your help. I am now getting a clearer picture.

My own thoughts would be to make sure your 400 glyphs are not duplicates in some fashion.

Perhaps I will not use so many but no duplication exists. Take into account ornamentation variations, old music symbols, technical annotations for the different instruments, symbols for harmony, figured bass, percusion, etc. But the Unicode standard covers the most importants.

Can your software run on all platforms?

Not yet. The software that currently can be downloaded from my website is written in Visual Basic, so it only runs on MS Windows. But I started in November a full redesign and migration process, aiming also at integrating a music score editor. The new software is being written in C++, using wxWidgets ( www.wxwidgets.org ) . This provides total platform independence so that it will be very cheap to generate versions for any other platform. That’s why I would like not to have problems with the font. I will follow your advice: both of you agree on using True Type. Also the reason of Font Creator not supporting Open Type is a good argument.

How did you solve this (the combination of symbols) in your software? It might be too late to change what works.

As the symbols are not entered via keyboard I don’t have the combination problem. Currently I combine symbols by printing them one after the other. Probably there is a better method as I have seen in the Unicode standard and in the Font Creator documentation that is it possible to generate symbols, at font level, by combining glyphs. I will investigate this and change the software if necessary.

If your software is the only thing to use this font, it doesn’t matter how it’s organized. You don’t need standardization if you are the only one.

Yes, that’s the case. But as my project has no commercial aim I probably will release it under GNU or similar licence. So the font would be there for free for anyone. I will attempt to follow the Unicode standard and allocate any additional symbols in the private user area (as William suggests). Unicode standars will probably give more utility to the font but, in any case, I will learn something in the atempt.


Thank you again for your help.


I have found in the web some references to a GNU project (XEMO) who was going to provide, among other things, unicode GNU music fonts, but I have been unable to connect to their web site. I wondering if does it still exist. Do you know anything about this project?

Best regards,

Cecilio