Menu

#2455 Lyrics should be compressed when there's not enough horizontal space

Accepted
nobody
None
design
Enhancement
2012-04-07
2012-03-30
Anonymous
No

Originally created by: *anonymous

Originally created by: janek.li...@gmail.com
Originally owned by: janek.li...@gmail.com

Sometimes long lyric syllabes are attached to short notes - this makes proper spacing difficult.  I suggest to reduce widths of such syllabes using two techniques:
- use tracking, reduce distance between letters
- use a condensed font series or squeeze the letters.

When squeezing letters horizontally, care should be taken to make them a bit bolder to compensate for the squeezing.  For example, when a letter is narrowed to 80% of its original width, the vertical lines become 20% thinner.  This is very noticeable (letters look skinny) and thus it should be countered with making glyphs 20% bolder.

Here you can see a hand-made (that is, made with Paint) example how this "lyric compressing" might look like, together with an example from excellent Baerenreiter engraving: http://lilypond-stuff.1065243.n5.nabble.com/examples-for-Lyric-report-compressing-Lyrics-td5607332.html

This issue is a part of the Lyrics Project.  See related entries:
issue 2450
issue 2451
issue 2452
issue 2453
issue 2454
issue 2455
issue 2456
issue 2457
issue 2458
issue 2459
issue 2460
issue 2461
issue 2462

Related

Issues: #2450
Issues: #2451
Issues: #2452
Issues: #2453
Issues: #2454
Issues: #2456
Issues: #2458
Issues: #2463

Discussion

  • Google Importer

    Google Importer - 2012-03-30

    Originally posted by: tdanielsmusic

    The difficuly with this is the interaction with line-breaking.  It would be wrong to compress lyrics if the lines were subsequently broken in such a way that the compression was unnecessary.  It's not clear to me how this might be avoided.  If implemented, it must be possible to disable it with an override.

    Trevor

     
  • Google Importer

    Google Importer - 2012-03-30

    Originally posted by: lemzw...@googlemail.com

    You might read Hàn Thế Thành's dissertation (http://www.tug.org/TUGboat/Articles/tb21-4/tb69thanh.pdf#page=317) about this topic, implemented in pdfTeX (and activated for many fonts if you load the `microtype' package).  The essential conclusion is that compression and expansion must be applied very carefully to avoid disturbing effects.  IMHO, the compression values you've used in your examples are far too large, making them extremely ugly.

    Another complication: Making glyphs bolder while squeezing them at the same time is only possible with either Adobe's Multiple Master technology or Apple's AAT fonts since you need two font axes to control that (one axis for the boldness and another one for the squeezing factor).  The former has officially been abandoned, and the number of available fonts for the latter is very limited, unfortunately.

    Given these problems, I suggest not to start with this before your other lyric issues have been resolved.

     
  • Google Importer

    Google Importer - 2012-03-31

    Originally posted by: janek.li...@gmail.com

    Trevor:
    I agree that lyrics should be compressed only when necessary.  Maybe it would be possible to uncompress them if the line breaking eliminated tight situation, for example.

    Werner:
    Thanks for the link!  It looks very interesting.
    As for the ugly looks, what do you think about this example:
    http://lilypond-stuff.1065243.n5.nabble.com/file/n5608378/new_scaled_lyrics_suggestion.png
    ? (it looks a bit shabby because i simply scaled a raster graphic, but should give you the idea)
    In my opinion it looks quite acceptable even without making compressed font bolder, and the result is quite noticeable: 16% reduction in width.  16% makes a difference, i'd say.

    thanks,
    Janek

     
  • Google Importer

    Google Importer - 2012-03-31

    Originally posted by: x.sche...@gmail.com

    This issue seems more complex (I mean, compared to the other ones from
    your "lyrics issues package").

    Maybe it would be better to enhance first the font API (i.e. implement
    a "fontspec-like" interface, as expressed by Werner in issue 1388 )
    and then add the "microtype-like" features, i.e. compression/expansion
    of the text.

    But I'm not a font specialist at all.  I do not know how the code of
    these LaTeX packages could be "re-used" for LilyPond.
    IIRC LilyPond in its early age was delegating stuff to LaTeX processing,
    so instead of "reinventing the wheel" one could take advantage of the
    work done in LaTeX.

    My 2¢.

     
  • Google Importer

    Google Importer - 2012-04-07

    Originally posted by: lemzw...@googlemail.com

    [Sorry for the late reply.  For some reasons unknown to me, I haven't received email notifications from code.google.com if someone replies to my comment.]

    Janek, your examples are still compressing far too much.  This might be suitable for some manual intervention to handle exceptional cases, but not for the general situation of letting lilypond do this by herself.  IIRC, the microtype package uses ±2% or so.

     
  • Google Importer

    Google Importer - 2012-04-07

    Originally posted by: janek.li...@gmail.com

    [maybe it's because of the new lilypond-auto mailing list, to which the comments are now sent?  You can also try starring this issue.]

    Yeah, but the microtype handles something completely different:  its job is to make the paragraph look even.  LilyPond's job is to attach lyrics to notes in a most legible way, and the problems arise when there's a long sylable attached to short note, for example "schmerz" or "straight" - there are only two possibilities: widen the note spacing or shrink the syllable.  Widening note spacing disturbs the rhythm, and thus it shall be reduced to minimum in my opinion; that's why i want to squeeze the text - ±2% here wouldn't make any difference.  Of course the amount must be user-settable; i could agree to 6% being default value, for example.

    Btw, do you have any objections to changing tracking, similar to this engraved example http://lilypond-stuff.1065243.n5.nabble.com/file/n5607332/example_-_Messiah_baerenreiter.jpg
    ?

    Labels: Needs-design