OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Subject: Re: DOCBOOK-APPS: representing and rendering symbol characters

> From: Bob Stayton <bobs@sco.com>
> > Erik Hennum wrote:
> > 
> > > Most of the character set from the symbol font could be mapped
> > > to ISO character entities.  However, rendering the entity seems
> > > problematic.
> > > 
> > > The HTML XSLT scripts pass through the ISO entities in the
> > > generated HTML.  The mainstream browsers seem to have
> > > only limited support for the ISO entities.
> > 
> > jirka@kosek.cz wrote:
> >
> > Which XSLT processor did you use? In generated HTML there should not be
> > entity references (except for chars from ISO Latin 1), there should be
> > only character references in form &#code; where code is Unicode/ISO10646
> > character code. If your browser supports Unicode (this for example true
> > for IE and Mozilla on Windows, probably also other browsers/platforms)
> > there should not be problem with displaying these character glyphs.
> And connecting this to Docbook, the conversion of characters
> from Framemaker to Docbook XML needs to map them to the ISO entities
> listed in the Docbook iso-*.ent files included with
> the Docbook DTD.  For example, in iso-tech.ent you see:
> <!ENTITY infin  "&#x221E;"> 
> The FrameMaker infinity character
> should be converted to "&infin;" in your Docbook XML
> files so you have a nice mnemonic entity.
> The ent declaration identifies it properly by
> its Unicode character in XML, and Norm's stylesheets
> should render that Unicode character in whatever output format
> you choose, including HTML.

I decided to double-check this myself, and found that your
browser mileage may vary. The DTD makes &infin; into &x#221E;
and Norm's stylesheet for HTML renders that as &#8734;
which is a valid HTML 4.0 character entity.  This is all
completely correct processing.  But when the load the
resulting HTML into various browsers, you get various results.

The entity renders properly in IE 5.5, but appears as a "?" in
Netscape 4.75 on Windows and Netscape 4.76 on Linux.
I didn't try a Mac.
Jirka, are you sure you saw these entities rendered properly
in "mozilla for Windows" (was that Netscape 4.7)?
Were you perhaps thinking
that Netscape supports the utf-8 character set?  If
you render your output as utf-8 and add this:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=utf-8">

then it probably will render. But the HTML 4.0 entity &#8734;
does not.  And HTML using utf-8 encoding will not work on
other older browsers.

The HTML 4.0 spec has been around since 1997, so why haven't
these standard character entities been implemented in Netscape?

So I think Erik's original question still stands: how do you render
the symbol font characters universally on all HTML browsers?
It looks like image files are the only universal form.

Bob Stayton                                 400 Encinal Street
Publications Architect                      Santa Cruz, CA  95060
Technical Publications                      voice: (831) 427-7796
The Santa Cruz Operation, Inc.              fax:   (831) 429-1887
                                            email: bobs@sco.com

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Powered by eList eXpress LLC