View Single Post
Old 11-28-2021, 03:01 AM   #14
Tex2002ans
Wizard
Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.Tex2002ans ought to be getting tired of karma fortunes by now.
 
Posts: 2,306
Karma: 13057279
Join Date: Jul 2012
Device: Kobo Forma, Nook
Quote:
Originally Posted by Hitch View Post
And let me say, for commercial eBookmakers, those damned faux fonts, created by typographers, are no fun either. [...] and the customer refused to lose the "precious" sans serif face he had. I explained that we had no ability faux-italicize.
Woof.

Quote:
Originally Posted by Hitch View Post
Quote:
Originally Posted by Quoth View Post
Some fonts even have a slant face and a true italic, because the italic is not simply a slanty font.
Yeah, but, it's beyond rare. Hell, I don't think I recall one.
Indeed. Very very rare.

(There's also odd/rare combinations, like Upright Italics... mostly used in Maths.)

* * *

And then in CSS, along with your typical font-style: italic, there's even:
  • font-style: oblique;
  • font-style: oblique 10deg;
    • Can go anywhere from -90 -> 90 deg.

but support for this is... crappy. See:

Quote:
Originally Posted by Hitch View Post
I really wish there was some magic button I could push so that I'd have some way of knowing that an italic or bold face was being fake-created by a typographer/designer.
"Variable Fonts" are theoretically going to solve some of this—you'll have about 12 different variables you can tweak, like:
  • Weight/Width
  • Italics
  • Slant
  • Optical Size
  • Grade
  • [...]

morphing a single font into all the different variants.

So instead of having 12+ versions (Bold, Italic, BoldItalic, Light/Medium/Heavy, Condensed/Extended, [...]), you'll only have a single font that can be stretched/changed.

If you wanted to play with some of the sliders in different fonts, see:

For an easier overview article, see:

For in-depth technical details, see:

But, in many real-life cases, I think it's going to create lots of disasters.

Like those rotten sites that use CSS letter-spacing, but never take into account people who block/override + aren't using their specific fonts. The text clashes together (or becomes too far apart) and becomes completely unreadable.

(Similar to when you export Fixed Format EPUBs out of InDesign—or don't have InDesign's stupid "cloud fonts"—but it still carries over the disgusting CSS, causing chaos in the fallback fonts.)

- - - - -

Side Note: There are huge advantages though with Variable Fonts. Filesize being a huge one.

Most of the fontfaces have nearly-duplicate information, with only minor differences between, so 90%+ of that can be compressed away:

Instead of Regular+Bold+Italic+BoldItalic taking up 2MB + 2MB + 2MB + 2MB = 8MB, it might be a 2.5MB variable font (which includes "all 4" + thousands of in-between variants).

Side Note #2: Most of this "variable tweaking" is also already done by font designers when designing fonts.

There are so many characters in Unicode now, it's impossible for a single person (or group of people) to design a all the typefaces by hand... so a designer will:
  • Design the main font/character.
    • Like the Regular + Bold + Italic versions.
  • Mathematically generate the different weights/variants.
    • Tell the computer: "Make all lines thicker/thinner."
    • Or tell the computer: "Here's the beginning (Regular), here's the end (Bold), generate 4 different steps between my designs."
  • Manually correct any problems.
    • Like clashing/overlapping lines, bad kerning, etc.

A lot of this discussion was covered in the absolutely fantastic talk from last year's TUG 2020 conference:

which explains how the Noto family of fonts was created over 15+ years.

Noto is an enormous open-source fontface designed to support most of Unicode:
  • Over 90 languages + 77 thousand Unicode characters supported
  • 72 different typefaces

Quote:
Originally Posted by hobnail View Post
Computer Modern had slanted as well as italic. It was a great font family in the sense that Knuth designed a base font [...] There's something newer these days but I forget its name.
If you want the original "Computer Modern" font, just expanded to support many more characters/languages...

There's "Latin Modern" font, which was created in 2002 (last updated 2021):

https://ctan.org/texarchive/fonts/lm
http://www.gust.org.pl/projects/e-foundry/latin-modern

and "New Computer Modern", which was created in 2019 (last updated 2021):

https://www.ctan.org/texarchive/fonts/newcomputermodern

- - - - -

Side Note: There are a few more "Computer Modern"-based fonts over the decades, like "CM-Super", etc., but many of these haven't been updated to support lots of the newer Unicode characters + OpenType features.

There are also many other high-quality fonts out there... many are listed in:

Side Note #2: And as discussed way above, there are so many more characters (in Unicode) now compared to back then.

To support all possible combinations is a monumental task.

With many fonts, they also tend to be very English- and/or Western-European-centric, so they break (or don't support) writing with things like:
  • complicated/unexpected/weird accent + letter combinations
    • Czech Č + Ď
      • You may be writing a foreign author's name in an otherwise all English book... whoops, that character doesn't exist in your font.
    • the Irish "dotless ı" + the Turkish "dotted İ"
      • You want to capitalize or lowercase that? Have fun, heh, heh.
    • or the mathematical "hat" in letters like:
      • î
        • i + circumflex. The dot in the 'i' disappears and gets replaced.
      • B-hat
        • B + circumflex. No language actually has this letter, but could be used in Maths.
  • non-Latin-based alphabets

Billions of people also read/write with other, more complicated scripts, like Arabic + Asian languages.

- - - - -

Complete Side Note: Because of this thread, a few days ago I was catching up on Harfbuzz's creator—Behdad Esfahbod.

(Harfbuzz is the fantastic "text shaper" created over the past 20 years, and is now the basis for many programs/OSes [Chrome/Firefox/Photoshop/LibreOffice + Android/Linux]. I referenced it a handful of times in posts over the years.)

He gave talks covering lots of this font stuff:
  • 2016: "Behdad Esfahbod - Ten Years of HarfBuzz"
    • General overview. Explains how characters get put on the screen, how previous methods failed in "edge cases", and how complicated letters like Arabic/Indic get strung together in computers.
  • 2015: "Unicode, OpenType, and Fonts"
    • Describes how Unicode + OpenType specs do not match, so there's all this complicated stuff and hacks that nobody knew how to map correctly... so you have bugs in:
      • Unicode -> OpenType
      • OpenType -> Fonts
      • Fonts -> Unicode
      mixed with font designers not knowing renderings were wrong (or hacking around the hacks, so the font files themselves were broken)... mixed with each OS interpreting/rendering slightly differently...

Sadly, it seems like Esfahbod's leaving the font business. (Due to how corrupt Microsoft + Adobe have been, and how a few people there have been jamming up and holding back fonts+OpenType for many years.)

He summarized a lot of his 20 years of font research here, leaving the groundwork for future formats + enhancements:

And he covered a lot of the font history (+ corruption) in his video here:

Interesting things I learned was the introduction of "Color Fonts". There were 4 different implementations all merged into OpenType at about the same time:
  • Apple
    • Bitmap image-based.
  • Adobe+Mozilla
    • SVG vector-based.
  • Microsoft
    • Flat colors only. Introduced in Windows 8 (or 10?).
  • Google
    • PNG-based approach.

and no OS supports all 4. Each OS only supports 1 or 2 of these.

This color incompatibility was a big disaster, so now some higher ups in OpenType are very hesitant to add further functionality, shooting down lots of potential enhancements/solutions. (The color solution Esfahbod has been trying to get added is "Color Gradients", which would've compromisingly tackled most use-cases... and again unify OpenType across all OSes just like he did with HarfBuzz.)

Last edited by Tex2002ans; 11-28-2021 at 08:00 PM.
Tex2002ans is offline   Reply With Quote