Why 'J' is displayed instead of smiley?
Both 5.11 and 6.998
-----------------
<html><meta http-equiv="pragma" content="no-cache"><title>LOL</title><body
bgcolor="#CCCCCC" text="#000000" link="#000000" vlink="#800000"
alink="#ffffff" background=""><center><h2><a name=top>LOL</a></h2> <p><hr
size=1 width=80% align=center><p> [<a href=./>Наш Форум</a>] [<a
href=#ans>Ответы и комментарии</a>] [<a
href="/cgi-bin/wtboard.cgi?root=off&fid=0&numans=64">Написать
ответ</a>]</center> <p><hr size=1 width=80% align=center><p> <div
align=left>
<!--endhome-->
Отправлено <b><a href="mailto:redd...@ost.net.ru">RD</a></b>, <i>15:57:06
25/10/2001</i>:<p><div align=justify>
<dd>
</dd> <dd>Choose your button and push they. If she don`t pushed, she
doesn`t worked... <font
face="Wingdings">J</font></dd> <dd></dd> <dd>Найдите 10 ошибок в
данном предложении</dd> <dd></dd>
----------------- the rest is skipped
With best regards, Arioch /BDV/. E-mail: the_A...@chat.ru
>Why 'J' is displayed instead of smiley?
><font face="Wingdings">
Because there is no letter J in the Wingding fonts. Your code states that
you want to display the letter J, so when Opera notices that Wingdings does
not contain the letter J, it switches to a more appropriate font.
If you want a smiley, the correct way is to use a character such as U+263A
(☺ or ☺).
--
\\//
peter, developer / utvecklare / utvikler, Opera Software
The opinions expressed are my own, and not those of my employer.
Please reply only by follow-ups in the newsgroup.
pk> Because there is no letter J in the Wingding fonts. Your code states
pk> that you want to display the letter J, so when Opera notices that
pk> Wingdings does not contain the letter J, it switches to a more
pk> appropriate font.
Then how should i access special characters, such as Windings, Webding,
those from CorelDraw! without using Unicode.
Afterall some of them are not even mapped to Unicode and will never be.
>Then how should i access special characters, such as Windings, Webding,
>those from CorelDraw! without using Unicode.
You don't. Unfortunately. HTML is defined as using the Unicode character
set, so if the character is not in Unicode, it cannot be used in HTML.
And of course - unicode is there for exactly these reasons!
Using a non-standard font such as Wingdings is just like using non-standard anything
else on the web. If other people can't be guaranteed to see it (in this case, anyone not
using MS Windows) then you shouldn't be doing it like that!
You can always make a little GIF of the thing instead!
(and of course, don't forget ALT=":-)" for all text-only users!)
But... in Windows NT 4 SP 6a, if I open the "Unicode Character Map"
program (from the Accessories group), the smiley appears in the "Latin-1"
subset as Unicode code point 004A. It may not *look* much like a "J"...
but apparently, in this font, it is code point 004A.
If "Unicode Character Map" knows that's the 004A glyph, why doesn't Opera?
(Indeed, on my system, Opera substitues a "J" from some other font.)
--
Peace,
Randy aka Coi...@MindSpring.com
Why does Coises have a web site? Why do peanuts come with directions?
Pages at http://www.mindspring.com/~coises/ were updated 18 Sept 2001.
>But... in Windows NT 4 SP 6a, if I open the "Unicode Character Map"
>program (from the Accessories group), the smiley appears in the "Latin-1"
>subset as Unicode code point 004A. It may not *look* much like a "J"...
>but apparently, in this font, it is code point 004A.
Charmap is wrong here, actually. It seems that it does not understand that
Wingdings is only encoded with the "Symbol codepage", but instead thinks it
is an old non-Unicode TrueType font and assumes it is windows-1252. My old
non-Unicode TrueType fonts look this way as well.
If you look at the font with the Microsoft TrueType shell extension, you
will see that no Unicode font ranges are listed as supported by WingDings.
I think Charmap may be following a Windows standard (though not a Unicode
one). This page:
http://users.iclway.co.uk/l.emmett/faq.html
includes a bit of information on "Symbol" character sets in Windows. The
gist of it is that symbol fonts have their glyphs at the high end of the
"Private Use area": specifically, at xf000 plus the "character" by which
the symbol is usually accessed. Apparently, Windows ordinarily adds and
subtracts the xf000 for these fonts without any specific programmer
intervention, so the characters appear to be represented in the 8-bit code
range as well (ignoring whatever code page would otherwise be in effect,
if I understand this correctly).
Since there is no other sensible way to interpret 8-bit characters in a
symbol font --- and since this translation occurs transparently in nearly
all Windows other programs --- I suggest that Opera should also interpret
code points x21-xff in symbol fonts as shorthand for xf021-f0ff. (There
is, however, the troublesome fact that these code points must be
interpreted "in the raw" --- that is, xf000 must be added to the actual
code points in the input, not to the Unicode values that result from
applying the document charset encoding. It won't surprise me a bit if you
tell me that's more than a trivial complication.)
To make matters worse: the Unicode Private Use Area code points, which
work in Opera and in at least some other Unicode-aware programs, for some
reason yield incorrect characters in IE 5.5... so using them is not a
browser-independent solution.
I think I found an answer of sorts. This page:
http://users.iclway.co.uk/l.emmett/faq.html
includes a bit of information on "Symbol" character sets in Windows. The
gist of it is that symbol fonts have their glyphs at xf000 (61440 decimal)
plus the "character" by which you usually access the symbol. So, instead
of using "J" --- which is J or J --- use  or  to
access the smiley as a Unicode character in Wingdings.
However... while this works in Opera 6.0b1, it *doesn't* work in IE 5.5!
So it's really not much of a solution. :-(
>Since there is no other sensible way to interpret 8-bit characters in a
>symbol font --- and since this translation occurs transparently in nearly
>all Windows other programs --- I suggest that Opera should also interpret
>code points x21-xff in symbol fonts as shorthand for xf021-f0ff.
No, that would probably be a *very* bad idea. And it would probably only
work if you actually use the non-Unicode API to output text, which Opera
does not. All text displayed on web pages by Opera is now outputted using
Unicode calls.
>To make matters worse: the Unicode Private Use Area code points, which
>work in Opera and in at least some other Unicode-aware programs, for some
>reason yield incorrect characters in IE 5.5... so using them is not a
>browser-independent solution.
Using them is not a *platform-independent solution*. Private use codepoints
should never be used on the Internet. They are okay inside a homogenous
environment, though.
pk> If you look at the font with the Microsoft TrueType shell extension,
Where to get one?
Is CharMap of Win2000 sp2 free of the described error?
> pk> If you look at the font with the Microsoft TrueType shell extension,
>Where to get one?
Googling for "Microsoft TrueType shell extension" gives
http://www.microsoft.com/typography/property/property.htm as the first page.
Try it. :-)
>Is CharMap of Win2000 sp2 free of the described error?
That, I do not know.
C> However... while this works in Opera 6.0b1, it *doesn't* work in IE
C> 5.5!
Is this a bug? Has it been filed? Does IE6 the same fault?
On Wed, 21 Nov 2001 03:35:17 -0700, Coi...@MindSpring.com
wrote:
> I think I found an answer of sorts. This page:
> http://users.iclway.co.uk/l.emmett/faq.html
> includes a bit of information on "Symbol" character sets in
Windows. The
> gist of it is that symbol fonts have their glyphs at xf000
(61440 decimal)
> plus the "character" by which you usually access the symbol.
Wingdings are fun, but imho, not of the quality of Zapf
dingbats. They really do not have any code points in Unicode,
as Unicode is defined; they are not part of the code.
U+F000 is part of the Private Use Area, and all bets are off,
*unless* both the source of te Unicode document and the
recipient agree on how the Private Use area will be defined.
In this specific case, apparently the Softy(?) folks decided to
put Wingdings into the Private Use Area, but they need to agree
with people who will be using Wingdings. Unless a Unicode font
defines those private-use code points as containing Wingdings,
they just are not there. Sorry! Try Zapf Dingbats, maybe?
If I sound crabby, that's my fault. Been awake too long; sorry.
NB
NB> are not there. Sorry! Try Zapf Dingbats, maybe?
What is the font? Is it free? where can one get it? What's it's size?