Putting colors in initials

Post to Twitter

The lettrine package is very useful to typeset initials (or drop caps) in LaTeX. However, in order to get very nice initials, you might want to add some colors to them.

Georg Duffner, the creator of the EB Garamond open-source font, while adding initials to EB Garamond using a 16th century French Bible, had the idea of creating two fonts to typeset initials: one font for the background ornaments, and one font for the foreground letters. This way, you could color them in different colors and typeset much fancier initials.

The letter A in the Initials F1 font

The letter A in the Initials F1 font

The letter A in the Initials F2 font

The letter A in the Initials F2 font

I then worked on a LaTeX package to make use of this technique and ease the typesetting of colored initials in LaTeX. By loading the two different fonts with fontspec and superimposing them with \rlap, it is easy to superimpose the two characters:

\rlap{\color{\EBLettrineBackColor} #2}%
{\EBLettrineFrontFont\color{\EBLettrineFrontColor} #2}}{#3}%

The fine-tuning can be done by using the lettrine.cfg configuration file:


The font is far from finished. As of today, only 3 initials are ready to be used (A, G and T) and adding new initials requires a lot of work. The LaTeX package can be found on github and will be on CTAN once the alphabet is complete.

An example of colored initials in LaTeX

An example of colored initials in LaTeX

Filed under LaTeX


Subscribe to comments with RSS.

  • Andrey Vihrov says:

    This looks marvelous!

  • Bruno Le Floch says:

    Look great! What kind of work does adding letters involve, if the font already exists?

  • When converting these letters, are you working from an already existing font? That is, it is a question of completely redesigning them or is it adapting something that already exists in electronic form?

  • @Bruno: the font only has 3 letters for now. Georg is working (very hard) on adding new glyphs.

    @Andrew: Georg uses mentioned 16th century Bible (http://www.bvh.univ-tours.fr/Consult/index.asp?numtable=B372615206_18229&numfiche=571&mode=1&offset=15&ecran=0&url=) to extract the initials and trace them in fontforge. It’s a huge work, and eventually there will be some letters missing (J, X, Y are a few examples), as well as duplicates (there’s 3 different A) which might become alternates.

  • Very nice. But wouldn’t creating a virtual font make this simpler to use?

  • What is a virtual font @Martin?

  • Bruno Le Floch says:

    @Raphaël: I had thought from reading your article that Georg Duffner had already finished that font. I wish you guys good luck for the other \the\numexpr 26 – \missing + \duplicates \relax letters.

  • ADP says:

    Has anyone completed the full alphabet for this yet?

  • No, the full alphabet has not been completed. This is a lot of work and Georg has been the only person doing it. You can get in touch with him if you’re interested. Also, some letters cannot be found in the Bible where the letters were taken from.

  • Leave a comment

    Log in
    with Stack Exchange