Ignoring mark to mark anchors for a specific base glyph
Khaled Hosny
Posts: 289
I have
There is also a complication because there might be other mark glyphs between
baseA
glyph with mark1
and mark2
anchors. I also have markA
with mark1
and mkmk
anchors, and markB
glyph with mark2
and mkmk
anchors. Normally when markB
follows markA
it will be positioned relative to it using the mkmk
anchor. However, this is undesirable when the base is baseA
as markB
will clash with it. So what I want to do is to always position markB
glyph using the mark2
when the base is baseA
and ignore the mkmk
anchor.There is also a complication because there might be other mark glyphs between
markA
and markB
.0
Comments
-
Have you tried simply ordering the [
mark2]
mark-to-[baseA] lookup — with appropriate mark group filter — after the mark-to-mark lookup? i.e. do the default mkmk position first, and then have the mark repositioned on the base?
The other, messier method, is to have a second mkmk lookup that repositions [markb] relative to [marka] based on the preceding context of [baseA].
(I hope I got the identifiers correct, but you probably understand what I'm getting at anyway.)0 -
IIUC, reordering the lookups (even if worked) will not give the desired effect since I still want
mkmk
to be used for all other bases.
I considered the second option before but tat is messy as you said.
Now I’m thinking may be trying to fix this with glyph positioning is not the best approach, I can instead have an alternate mark glyph that does not have themkmk
anchor and use glyph substitution with the appropriate context and mark filtering. That is a little messy because of the duplicated glyph, more cleaner than the other approaches.
0 -
(removing the border around <code></code> block would make the above posts look less messy, the border does not exit in the preview which is a bit misleading as well).
0 -
IIUC, reordering the lookups (even if worked) will not give the desired effect since I still want
mkmk
to be used for all other bases.
Right, so the secondary mark-to-base lookup, after the mkmk, only contains baseA; all the other bases are already processed in an earlier mark-to-base lookup. Mark positioning is iterative, so you can order lookups to move marks in sequence.
The GSUB method you suggest is definitely a viable option for this sort of thing. It's what I do in Hebrew fonts for the furtive patah bases.1 -
In this particular workflow the mark and mkmk features are auto generated and controlling the order of GPOS lookups would be much harder than adding a GSUB lookup (hello UFO).
0 -
I'm highly suspicious of any workflow that makes it difficult to control the order of lookups.1
-
Don’t get me started on how wonderful is the world of UFO.
1
Categories
- All Categories
- 43 Introductions
- 3.7K Typeface Design
- 803 Font Technology
- 1K Technique and Theory
- 622 Type Business
- 444 Type Design Critiques
- 542 Type Design Software
- 30 Punchcutting
- 136 Lettering and Calligraphy
- 83 Technique and Theory
- 53 Lettering Critiques
- 485 Typography
- 303 History of Typography
- 114 Education
- 68 Resources
- 499 Announcements
- 80 Events
- 105 Job Postings
- 148 Type Releases
- 165 Miscellaneous News
- 270 About TypeDrawers
- 53 TypeDrawers Announcements
- 116 Suggestions and Bug Reports