From: William Overington (WOverington@ngo.globalnet.co.uk)
Date: Wed Nov 06 2002 - 06:05:17 EST
John Hudson wrote as follows.
>At 02:18 11/5/2002, William Overington wrote:
Not at 02:18, it was 09:18.
>
>>Well, I suppose it depends upon what one means by a file format that
>>supports Unicode. The TrueType format does not support the ZWJ method and
>>thus does not "provide means to access unencoded glyphs by transforming
>>certain strings of Unicode characters into them".
>
>All three of the current 'smart font' formats are extensions of the
>TrueType file format. Structurally, the only difference between a TrueType
>font and an OpenType font is the presence of *optional* layout tables that
>support glyph substitution and positioning. Officially, the only difference
>is the presence of a digital signature.
>
>>I am unsure as to
>>whether, in formal terms, TrueType is "a file format that supports
Unicode"
>>as it does not allow the ZWJ sequences to be recognized.
>
>Of course TrueType allows ZWJ sequences to be recognised. ZWJ is a
>character that can appear in Unicode text and in the Unicode cmap of a
>TrueType font. If a font does not contain a ligature for the sequence, or
>does not contain layout information to render the sequence as a ligature,
>the text is still processed according to the Unicode Standard, i.e. nothing
>happens.
I am thinking here of ordinary TrueType fonts on a Windows 95 platform and
on a Windows 98 platform. I was under the impression that the reason that
an ordinary TrueType font will not process a ZWJ sequence on those platforms
was that both the operating system and the ordinary TrueType font do not
have the capabilities to process ZWJ sequences. My understanding is that
even an OpenType font with ZWJ sequence facilities will not work on a
Windows 95 or Windows 98 platform. However, I thought that the ordinary
TrueType format would not support ZWJ sequences in itself and that not only
would a later operating system be needed but that also an OpenType font
would be needed and that an ordinary TrueType format would not be able to do
the job. Was I wrong in that thinking? My experience of fonts is very
limited. I have tried making a few example TrueType fonts using the Softy
shareware facility and I wonder whether I have got it wrong as to what an
ordinary TrueType font will do when an ordinary TrueType font is made with
an expensive professional font making program.
>To say that a font only supports Unicode if it can process and
>render as a ligature every usage of the ZWJ character is foolish: every
>font would have to contain glyphs and substitution lookups to support every
>potential use of ZWJ in every possible
>c+ZWJi+i+ZWJi+r+ZWJi+c+ZWJi+u+ZWJi+m+ZWJi+s+ZWJi+t+ZWJi+a+ZWJi+n+ZWJi+c+ZWJ
i+e.
I have had a long think about this.
Suppose that a sequence of Unicode characters in a plain text file is mostly
in English and has the sequence c ZWJ t in it at various places.
Suppose that the font is an advanced format font which does not have a
special glyph for the sequence c ZWJ t yet will simply render it as ct just
as if the ligature had not been requested.
As far as I know, there is no requirement in Unicode that the rendering
system should notify, perhaps using an Alert dialogue box or similar, the
end user that the ZWJ request has been "made yet not fulfilled".
Can an advanced format font supply such a message to the rendering system
for onward notification of the end user?
It seems to me that having the ZWJ mechanism in the Unicode Standard yet
having no reporting mechanism if a specific request is not fulfilled is
unfortunate. As a font could have its own set of ZWJ sequences which it
recognizes, anything from an empty set to a set consisting of a full
complement of ligatures for Fraktur, it seems to me that whilst every font
would certainly not have to contain glyphs and substitution lookups to
support every potential use of ZWJ in every possible circumstance it would
not be unreasonable to hope that fonts could have a standardized reporting
mechanism as to whether a request for a particular ZWJ sequence has been
fulfilled. Also, perhaps there could be a method for asking a font to
please display all its ZWJ sequences and their results.
Now it might be that some advanced font formats can do such things, I do not
know at present.
While on this topic, perhaps a standradized method of a font reporting that
it has no glyph for a character which it is asked to render might be a good
idea. I am aware that a black line box could be displayed, yet in a long
document, one of those might easily slip past a general viewing of the text
in a printshop. Also, perhaps some method of asking a font to declare a
list of the code points for which it has a specific glyph would be helpful.
Again, perhaps some advanced font formats have these abilities, I do not
know at present.
There seems to be a gap between the Unicode Technical Committee encoding
characters into a file and the process of making sure that the desired text
is rendered correctly on an end user's platform with good provenance. I
feel that that issue needs to be addressed. Hopefully the Unicode Technical
Committee will wish to take that task upon itself. It not, then perhaps
some other process can be found of codifying a standard method.
>That's even more moronic that saying that a font has to contain a glyph for
>every character in Unicode in order to support the standard.
I did not write that.
>It simply is
>not true, and you're wrong.
Well, I did not write that and so I should not be labelled as wrong in the
matter.
>Again.
Not even once!
I feel that it is a pity that the Unicode Technical Committee did not
implement the Zero Width Ligator suggestion made some time ago by Mr Michael
Everson.
William Overington
6 November 2002
This archive was generated by hypermail 2.1.5 : Wed Nov 06 2002 - 06:42:15 EST