uniXXXXXXXX names

I was under the impression glyphs named this way (“uni”+first Unicode value+second Unicode value) would produce two separate glyphs in the underlying data stream. (Similar to how typing a ß, capitalizing it, generating a PDF and copying the text, results in SS. ) What is the purpose of such names? Where can I read more about the topic?

I am pondering this question because InDesign does not support one-to-many substitutions with the default Paragraph Composer. I really wanted to sub “A” for “B C”. Next best option, I figured, would be “A” for “B_C”.

(Apologies for my lacking terminology. Please don’t hesitate to correct me.)


  • For the record, I’m trying to find a solution for this substitution: ĸ to K‘
  • The double Unicode names do not put two characters in the string. But Acrobat will know that there where two characters before. 
  • How does it use this knowledge?
  • Bahman EslamiBahman Eslami Posts: 64
    edited July 2016
    AFAIK Glyph names are arbitrary. uniXXXXXXXX name is just as arbitrary as A_B it and doesn't affect the output unicode stream. If you substitute A and B with A_B in your OT features that affects the output unicode stream because the components contained unicode.
  • All the considerations that go into production glyph names in fonts are only because in some circumstances, a pdf will only contain the glyph names and not the underlying Unicode. This happens if you use Distiller. If you them try to copy paste from the pdf, Acrobat tries to reconstruct the original string from the names. 
  • Kent LewKent Lew Posts: 858
    edited July 2016
    I noted your discussion on the Glyphs forum.

    It’s too bad that Adobe doesn’t make the more broadly functional World-Ready Composer the default now.

    It seems to me your sub kgreenlandic by uni004B02BB; should work for your desired representation. It just won’t force the underlying data stream to change.

    As I understand it, the AGL uni12345678 name form is intended to allow fallback reconstruction of an encoded text stream from glyph name when necessary in certain PDF workflows — but only when the original unicode text stream is not retained in the PDF. So, not in most circumstances.

    Otherwise, you can’t use a font to force a cased ĸ to automatically turn into a Kʻ in the underlying text stream.

    For that, I think you’d need to lobby Unicode to update their case folding rules to recognize this relationship.

  • Thank you all. I am still looking for the documentation where this is explained.
  • Thanks!
  • Frode, I faced this substitution issue (ĸ to K‘) and my solution was to add K‘ as a single glyph, using the same criteria for small caps and petite caps.
  • Ray LarabieRay Larabie Posts: 867
    Didn't they stop using that letter in the early 1970's?
  • edited July 2016
    Last time I checked, Ray, you released a font supposedly supporting languages that require this letter.
  • Kent LewKent Lew Posts: 858
    Didn't they stop using that letter in the early 1970's?
    What? and no one ever publishes anything written before 1970 any more, so we should all be fine without it? :-/

  • Ray LarabieRay Larabie Posts: 867
    You're right. Sorry I mentioned it.
  • Kent LewKent Lew Posts: 858
    Sorry, didn’t really mean to sound so snarky, Ray.

    The fact is, when it comes to character sets, one size does not really fit all. That’s the quandary of standardization.

    There may well be fonts where including letters that aren’t in current use is not important — trendy display styles, for instance — and others where it is worthwhile even if the chance of their use is slim to none.

    That said, as far as “historical” characters go, the ’70s aren’t all that past for some of us, right? ;-)
  • Thank you very much, John. Insightful and on point, as always. I am aware the case feature is not supposed to handle this. No matter how I attempt to solve such a challenge with OpenType, it is bound to be a hack.

    Note: I generally try to ask my (silly) questions a good while before I implement a feature in a font.
Sign In or Register to comment.