Elemaints - A Serif Family with Optical Sizes



  • @"Jānis Kalaus"  Thanks for this interesting resource, I will use it for the design of the italic cyrillic glyphs!

    @Christian Thalmann Indeed, my display face had some letters that were too compressed (e.g. the /O ). When changing the widths, I have changed some designs too, among them /p /b /q /d. The widths of the display face are now more vivid.

    So here is the updated cyrillic:

  • Might the new display half-moon bowls, especially in /q/ and /b/ where they're not tempered by an incision, a bit too large?
    The PDF shows some inverted overlaps in /A/, /fita-cy/, and /Fita-cy/.
  • "Книга про буквы от Аа до Яя", Юрий Гордон
    Or try asking the author of the book >> https://yurigordon.com/
    This book is great, even if you don't speak Russian. For non-Russian speakers, you can use your smartphone camera and an app like Google Translate to get a rough translation of the text. It's not perfect, but close enough to get the ideas across.
  • @Christian Thalmann Yes, the /q and the /b were a bit too wide in the display face; I have made them narrower.

    Additionally, I have overhauled my interpolation system entirely:
    • The tiny faces are no longer extrapolated from the caption and display faces, but the caption faces are interpolated from the tiny and display faces
    • The order of finetuning is now: interpolate, unlink reference, add extrema, remove overlap, simplify contours, round, auto-hint
    • In order to get better tangency in the interpolated faces, the base faces now contain non-integral coordinates for tangent handles and have the extrema removed from contours that have tangent handles attached.
    This change is quite time consuming. A preview of the current state:

  • A short status report: I have done the repolishing of the Tiny and the Display face. Hence, all shapes of the regular faces are done thanks to interpolation. Here is an example with small caps (do not mind the spacing yet):
    Here are the steps that were necessary in FontForge to achieve a smooth interpolation for diagonal serifs:
    1. make the handles attached to tangent points really tangential with non-integer coordinates (just move the control point one unit up and down)
    2. remove the non-necessary extrema (conserving area)
    3. balance the handles (conserving area)
    4. resist to round the corresponding control points to integers (leave them non-integer)

  • Linus RomerLinus Romer Posts: 184
    edited February 2023
    A short status report: All glyphs of Tiny, Regular and BoldTiny are completed (up to spacing and kerning). Here is the BoldTiny:

    I will start with spacing and kerning after I have repolished the numerals «2» and «3». I am not happy with their current state (upper row) and I am thinking of switching to teardrop terminals (lower row). What do you think? Do they fit the other numerals? (The new «2» and «3» are influenced by Charter, Source Serif and Utopia.)

  • Christian ThalmannChristian Thalmann Posts: 1,936
    edited February 2023
    Absolutely gorgeous typeface! The only thing I stumble on is the sloped roof of /σ/τ/, particularly in the combination /στ/. The roofs feel misaligned there.
    As for the figures, I much prefer the more humanist ones on top.
    Oh, and /молекули/ needs kerning. /Wasser/ looks overkerned to me.
  • @Christian Thalmann You are right about /σ/τ/, their roofs were misaligned, indeed! This is solved now (BoldDisplay was extrapolated and will be refined later):
    About kerning: My English is not very good. With "up to spacing and kerning" I have meant "except spacing and kerning" (I guess I should use this expression only with mathematical texts). I already fear the kerning of the Cyrillic glyphs...

    Here is the complete overview for the new numerals for «2» and «3» (BoldDisplay was extrapolated and will be refined later). The typeface is intended for scientific texts. In this context the new numerals fit better, I think. 

  • I agree that new forms of two and three are fitting. To my eye your bold figures are a bit uneven in color (e.g. six and four look darker than five and two). 
  • Wow, this is very nice. Lovely work!

    On the lowercase alpha, the thin stroke looks like it offsets a bit while crossing the thicker one. That is, it appears visually as if the top tail shifts left—despite the fact that measurement would say otherwise. This is the same optical illusion that often afflicts the latin X/x, and is generally resolved by offsetting the thinner stroke, in this case moving it a bit right. Try about 1% of the em to start, see how that looks.
  • About kerning: My English is not very good.
    No, that was just sloppy reading on my side, sorry...
  • @Thomas Phinney: Indeed, the offset strokes in the crossing look more natural:

    @""Craig Eliason" You are right, here are the improved numerals for BoldTiny:

  • Thomas PhinneyThomas Phinney Posts: 2,703
    edited February 2023
    I think that the crossover on the alpha is definitely much improved!  :smiley:
    Perhaps the stroke offset on the alpha could be a very little bit more? Certainly it is most of the way to an excellent amount.
  • Linus RomerLinus Romer Posts: 184
    edited April 2023
    @Thomas Phinney Thanks! I have reworked the crossing letters /alpha, /chi and /x. I hope they look more consistent now:

  • Are the lighter alphas leaning to the right?
  • Linus RomerLinus Romer Posts: 184
    @Christian Thalmann At least the /alpha of the bold display face was leaning too much to the right. I will modify this later by hand, this was mainly an unexpected consequence of the extrapolation (I will make the bold display face a master based on the extrapolation of display, tiny and boldtiny). Still, I have tried to adjust the /alpha a bit more in the current master faces:

  • Thomas PhinneyThomas Phinney Posts: 2,703
    I think the crossover compensations are mostly working decently, except it has gone a bit far for the x in the bold weight (all sizes).
  • Thomas PhinneyThomas Phinney Posts: 2,703
    Is it just me, or did you adjust some crossovers slightly in between the sample of the 15th and the sample of the 20th? If so, nicely done. If so, nicely done.
    (If not, clearly I need to go to bed now.)
  • Linus RomerLinus Romer Posts: 184
    @Thomas Phinney Yes, I have changed some crossovers slightly in between the sample of the 15th (version 0) and the sample of the 20th (version 1). Upon your suggestion of today I have changed the BoldTiny /x (version 3). Additionally, I have made the thin joins of more similar in the /alpha and /chi of the bold tiny face and the /chi of the tiny face. For comparison, I have listed the changes since February 15th here:

  • Thomas PhinneyThomas Phinney Posts: 2,703
    Oh good. It is subtle stuff, and you hadn’t mentioned it, so I wanted to be sure I wasn’t fooling myself.    :p

    Anyway, looking really good.  :smiley:
  • AbrahamLeeAbrahamLee Posts: 262
    @Linus Romer this is a phenomenal typeface. Any idea when you hope to release it? I will be first in line, whenever that is. Great work!
  • Linus RomerLinus Romer Posts: 184
    @AbrahamLee I will soon have a sabbatical (during 3 months) and will invest my time for the Elemaints typeface. So, I hope that the main work will be finished in automn. If everything goes well I might release the typeface by the end of the year 2023.
    At the moment, I am optimizing the spacing and kerning and the small caps:

  • That's good news!
    (The small caps spacing looks a bit tight, perhaps? Intersperse it in a lowercase text block and see whether it sticks out visually...)
  • Linus RomerLinus Romer Posts: 184
    edited June 2023
    @Christian Thalmann I fear you are right: The small caps seem to be spaced too tightly at the moment!
    Well, I will losen the small caps then...
  • @Dave Crossland  The sources would have little value without any documentation. I will consider writing a TUGboat article about the evolution of Elemaints (including some METAFONT techniques) when the faces are ready.
    this is a very old comment, but I think  even if undocumented, the METAFONT sources (which as dave mentioned are not common things) do hold historic value, if not practical value to a designer
  • Linus RomerLinus Romer Posts: 184
    @jeremy tribby My first objective is the completion of the outline fonts. Then I will think of what I will do with my old METAFONT sources.

    @Christian Thalmann I accidentally took Elemaints Caption for the last example. The following example should indeed show Elemaints Tiny with looser small caps spacing. I think that the color is even now:

  • Linus RomerLinus Romer Posts: 184
    While I am still polishing the spacing and kerning of Elemaints Tiny, I have made a minimal spacing proof for the whole type family to prepare for the work on the italic faces. If you notice any peculiarity (spacing, shapes, inconsistencies), I'm happy to hear back!

  • I had to rework the stroke widths of the lowercase serifs for the italic faces (look at the serifs of the /n; the H has not changed):
    The changes were subtle but made a big difference for the interpolated/extrapolated faces. You may also notice that there are math variants for the italic /g, /v and /w:
    Taking the advice of @Christian Thalmann in his last post I have also mixed upright and italic faces (left column: tiny, mid column: regular, right column: display). Besides spacing/kerning I think the faces generally fit.

    Additionally, I have begun with cyrillic italic tiny glyphs:
    As you can see, I am not sure about /з:

    For me, the left looks better, but the right might work better with the other glyph shapes.

    Here are some examples of /д prototypes before I settled for the final shape.

    Afterwards, I have additionally changed the upright partial derivative sign (left italic /д; right upright /∂) to be more similar:

    Then I have invested quite some time to solve most of my TeX related problems with Elemaints (\boldmath{} and \bm{} still do not work properly at the moment). The documentation https://www.latex-project.org/help/documentation/fntguide.pdf was quite helpful (but not easy to understand for me...). Oh, and I have realized that FontForge does not interpolate texheight and texdepth parameters. So this has to be done in an own script (just as the interpolation of the lookup tables). The following examples show how the different optical sizes work together ("normal size" = regular, caption and tiny; "large size" = display, subhead and regular):

  • Every time I read your sample text HOBNAKDUS, I unconsiously pronounce it HOBDANKUS.

    This may be the most ambitious, highest quality typeface I’ve ever seen posted for critique on this forum. I have no useful critique to offer, other than I enjoy watching you develop it.
  • I haven't reported on this project for a long time. Some of you may find it interesting to read about some of the developments and considerations here:

    The optimization of the spacing was based on a uniform rhythm of empty spaces:
    The following illustration shows how an initial construction of the italic \n has been adapted so that, on the one hand, the space rhythm is correct and, on the other hand, the serifs allow the eye to be elegantly guided in the direction of reading (left half = before, right half = after). The spaces are determined less mathematically and more optically, i.e. to a certain extent subjectively. The hairline width has also been adjusted to better match the upright styles.

    Originally, the \b was developed from the rotated \a in all script styles. However, the upper left part of the slur is now flatter in order to have a similar dynamic to the \n slur. The change is most obvious in bold typefaces:

    The hairlines have always challenged me. On the \a shown here, the lower bow is initially too thin compared to the upper bow thinning and also looks a little crumpled. On the right \a, the lower right bow connection is more successful:

    To maintain consistency between the characters and speed up the work process, I found it often a good idea to use parts of the characters. On the right is an image without temporal development: The right part of the image shows the template of the Cyrillic \н (en) in the font style Italic Tiny instead. The left part of the image shows how various components are arranged similarly for the font style Italic Bold Tiny. The width of \н should correspond approximately to the width of \n. The upper left serif is taken from \i, while the left stem is taken from \n. The upper end of the right stem is taken from the stem of \a.

    The italic \д can have the upper tail in different forms. When I've encountered difficulties in getting the shaping right, I've applied a principle that ohnotype.co/blog/proof-it calls Going Goldilocks. You test different characteristics between two extremes and then decide on the most suitable one:
    The following image shows how I generated a new character from two existing ones. This is a raw product that was later refined.

    The curved serifs were a real challenge for me: The length and angle of inclination had to be tested again and again in various attempts. The picture shows at the lower right of the glyphs a steep serif (\m) and a flat serif (\n):
    The Italic Bold Display font is extrapolated from three other fonts. Extrapolation is tricky, as surprising results often occur, but it saves me a lot of work. The curved serifs were particularly susceptible to unfavorable extrapolations, so I had to adjust them several times. In the illustration, the serifs have been thinned out (left half = before, right half = after).
    Different versions of the \C are compared here. On the one hand, the left arch is affected by gravity to different degrees, on the other hand, the serifs are different. The middle \C is the compromise solution:
    Here too, the arc of the \D is affected by gravity to varying degrees. The comparison with the \O helps to find the right measure:
Sign In or Register to comment.