David Webber:
>> Then, to have cue-sized notehead, an application could use a sequence of > two characters CUE-SIZE + BLACK_NOTEHEAD; Then the font engine would > draw the correct glyph as a ligature (and 'liga' feature, unlike > stylistic alternates, is, as to my knowledge, commonly supported, > because some languages need it for correct spelling). > It would be very inconvenient for part-time font designers, but seems to > make sense. > > And I'm not sure what would be involved in designing the font to do this. This requires just one OpenType feature, which is simple. The inconvenience is to deal with glyphs that have no fixed codepoints and to provide all the appropriate glyphs. > I must admit you have now gone beyond what I know to be the > capabilities of the font engine (in my case in Windows). > Well, I'm not sure, what is really necessary to provide this output. It is simply my experience as engraver and editor using Sibelius (I'll refer to this program, as this is the one that I use mostly): using 'liga' in font was the most convenient way to achieve properly kerned parentheses with dynamic marks (editorial parentheses), and the ligated glyph for mp, in Sibelius 6 under Windows XP (this was an undocumented feature, and did not work with standard ligatures, like "ffi" in "soffio"). Perhaps I needed to enable support for Eastern languages in Windows. I had also an idea to make a font similar to Finale Mallets, but with simpler input: for crossed mallets one could type the same character twice, then the rotated versions of glyphs could be provided by contextual substitution. And for vertical mallets one could use an additional character (e.g. vertical bar). It worked in Sibelius 6, but in Sibelius 7 they changed font engine, and there is no support for contextual substitution (at least in Latin script), so my solution is useless in this program (I have not tried with Private Use Area, maybe it could work). On the other hand, font engine in Sibelius 7 allows ligatures for digits (in earlier versions it did not work), so one can have Gregorian chant fragments set in font Caeciliae (http://marello.org/caeciliae/) within the score. This font, however, does not work in MS Word, because it uses ligatures for digits, but (ironically) it works in Notepad in Windows7 as well as in Adobe Illustrator. > So you're thinking of outputting an entire chord symbol, with numbers > on the right stacked above each other, with a single operation,as in > the Windows API > > ::TextOutW( L"<characters-representing-entire-chord-symbol>" ); > > Is that it? If so, it's an excellent objective. I don’t really know, what is necessary to enable support of ligatures, contextual alternates, and mark-to-mark positioning. But if these are enabled, then, in my attempt (for C7b5 written so that 7 is displayed above b5) the characters would be : CHORD.LETTER.C HORIZ.ROW.UP HORIZ.ROW.UP FLAT CHORD.FIFTH HORIZ.ROW.UP CHORD.SEVENTH END.STACKING The problem is, that if there are no letters (ABCDEFGMadgijmnostu - did I miss something?) and digits provided for this purpose (beyond Latin Script area), some font engines will not produce the correct output, since for the Latin script they do not apply any OpenType features. (This behaviour of engines is basically correct enough for text output, and seems to conform Unicode standard) The other disadvantage is that the digits would be relatively small (because they must fit in five storeys of symbols). I can imagine a font that would provide additional substitutions depending of the number of superscripts, but that is not easy. Anyway, that is the way one could provide displaying of chord symbols (and general bass) within text. If SMuFL wants to address this purpose, here is one of possible solutions. Emil ############################################################# This message is sent to you because you are subscribed to the mailing list <[hidden email]>. To unsubscribe, E-mail to: <[hidden email]> To switch to the DIGEST mode, E-mail to <[hidden email]> To switch to the INDEX mode, E-mail to <[hidden email]> Send administrative queries to <[hidden email]> |
Free forum by Nabble | Edit this page |