ct ligature
Posted: Wed Jun 11, 2008 9:30 am
I have learned a lot from studying this thread.
Regarding the ct ligature.
I notice that you have the following line in the lookup dligSub section.
sub c t -> ct;
I also notice that the lookup ligaSub section has no mention of the ct ligature.
In Unicode there are three ways to express the ct sequence.
The first is just to use ct as it stands, so that whether or not to use a ligature depends upon whether the font has a glyph for a ct ligature and upon the ability of the application program using the font and upon the discretion of the person using the font. Here is that sequence. ct
Another choice is specifically to request a ligature. The request may not be able to be granted, yet plaintext can record the request. This can, for example, be useful if one is transcribing the text of an early printed book.
To do this, a U+200D ZERO WIDTH JOINER character is used between the c and the t. Here is that sequence. ct
The U+200D ZERO WIDTH JOINER character, which is often referred to as ZWJ which, as it name implies should be of zero width, is nonetheless sometimes included in fonts as a visible glyph so that a non-OpenType application can detect that it is being used. The design of the visible glyph is non-standard. Some fonts, such as Arial and Times New Roman, use a vertical line with a small x on top. In my own Chronicle Text font I have used my own design of ZWJ glyph for the U+200D character.
The other choice is specifically to request that a ligature not be used, even if a glyph is available.
To do this, a U+200C ZERO WIDTH NON-JOINER character is used between the c and the t. Here is that sequence. ct
The U+200C ZERO WIDTH NON-JOINER character, which is often referred to as ZWNJ which, as it name implies should be of zero width, is nonetheless sometimes included in fonts as a visible glyph so that a non-OpenType application can detect that it is being used. The design of the visible glyph is non-standard. Some fonts, such as Arial and Times New Roman, use a vertical line. In my own Chronicle Text font I have used my own design of ZWNJ glyph for the U+200C character.
Suppose that a transcribed text has been prepared and that it uses ct in the transcript specifically to indicate that a ct ligature was used in the original printed text.
As far as I can tell, a font needs a line in the lookup ligaSub section so that the three character sequence c ZWJ t results in the use of a ct ligature glyph. It is not quite clear to me how to do that at present. The postscript name that FontCreator assigned to the ZWJ character is afii301 yet I am unsure as to whether that is the glyph name needed in the lookup ligaSub section. FontCreator assigned the postscript name afii61664 to the ZWNJ glyph. However, ZWNJ does not need to be referred to in the lookup ligaSub nor in the lookup dligSub section. The ZWNJ character works automatically, as the presence of the ZWNJ character between the c and the t means that the ct sequence as such does not occur and so is not recognized, meaning that a ligature glyph is not displayed, which is the desired effect.
For the convenience of readers trying experiments using WordPad and sequences involving ZWJ and ZWNJ I mention that ZWJ is Alt 8205 and that ZWNJ is Alt 8204.
William Overington
11 June 2008
Regarding the ct ligature.
I notice that you have the following line in the lookup dligSub section.
sub c t -> ct;
I also notice that the lookup ligaSub section has no mention of the ct ligature.
In Unicode there are three ways to express the ct sequence.
The first is just to use ct as it stands, so that whether or not to use a ligature depends upon whether the font has a glyph for a ct ligature and upon the ability of the application program using the font and upon the discretion of the person using the font. Here is that sequence. ct
Another choice is specifically to request a ligature. The request may not be able to be granted, yet plaintext can record the request. This can, for example, be useful if one is transcribing the text of an early printed book.
To do this, a U+200D ZERO WIDTH JOINER character is used between the c and the t. Here is that sequence. ct
The U+200D ZERO WIDTH JOINER character, which is often referred to as ZWJ which, as it name implies should be of zero width, is nonetheless sometimes included in fonts as a visible glyph so that a non-OpenType application can detect that it is being used. The design of the visible glyph is non-standard. Some fonts, such as Arial and Times New Roman, use a vertical line with a small x on top. In my own Chronicle Text font I have used my own design of ZWJ glyph for the U+200D character.
The other choice is specifically to request that a ligature not be used, even if a glyph is available.
To do this, a U+200C ZERO WIDTH NON-JOINER character is used between the c and the t. Here is that sequence. ct
The U+200C ZERO WIDTH NON-JOINER character, which is often referred to as ZWNJ which, as it name implies should be of zero width, is nonetheless sometimes included in fonts as a visible glyph so that a non-OpenType application can detect that it is being used. The design of the visible glyph is non-standard. Some fonts, such as Arial and Times New Roman, use a vertical line. In my own Chronicle Text font I have used my own design of ZWNJ glyph for the U+200C character.
Suppose that a transcribed text has been prepared and that it uses ct in the transcript specifically to indicate that a ct ligature was used in the original printed text.
As far as I can tell, a font needs a line in the lookup ligaSub section so that the three character sequence c ZWJ t results in the use of a ct ligature glyph. It is not quite clear to me how to do that at present. The postscript name that FontCreator assigned to the ZWJ character is afii301 yet I am unsure as to whether that is the glyph name needed in the lookup ligaSub section. FontCreator assigned the postscript name afii61664 to the ZWNJ glyph. However, ZWNJ does not need to be referred to in the lookup ligaSub nor in the lookup dligSub section. The ZWNJ character works automatically, as the presence of the ZWNJ character between the c and the t means that the ct sequence as such does not occur and so is not recognized, meaning that a ligature glyph is not displayed, which is the desired effect.
For the convenience of readers trying experiments using WordPad and sequences involving ZWJ and ZWNJ I mention that ZWJ is Alt 8205 and that ZWNJ is Alt 8204.
William Overington
11 June 2008