[whatwg] Vulgar fractions
Ian Hickson
ian at hixie.ch
Wed Jun 3 15:53:55 PDT 2009
On Thu, 16 Apr 2009, Øistein E. Andersen wrote:
>
> Currently, only a limited set of vulgar fractions can be expressed in
> HTML, viz, those that exist as pre-composed characters in Unicode.
> (For example, 16ths and 32nds, which are often used with imperial units,
> are not included.) This can be solved in several ways:
>
> 1) According to Unicode (<http://unicode.org/book/ch06.pdf>, p. 154),
> `any sequence of one or more decimal digits, followed by the fraction
> slash [U+2044], followed by any sequence of one or more decimal digits
> ... should be displayed as a unit, such as ¾'. Furthermore, Unicode
> Technical Report No. 20, `Unicode in XML and other Markup Languages',
> says that the fraction slash is suitable for use with mark-up.
> Unfortunately, no browser seems to transform a sequence like 3â16 into
> a proper vulgar fraction. If, however, browsers are willing to
> implement this, no changes to HTML are needed.
>
> 2) Unicode Technical Report No. 20 also suggests that specific mark-up, MathML
> in particular, may be used instead. MathML mark-up is a bit more verbose:
> <math xmlns="http://www.w3.org/1998/Math/MathML">
> <mfrac>
> <mn>3</mn>
> <mn>16</mn>
> </mfrac>
> </math>
> Unfortunately, this corresponds to a mathematical fraction rather than a
> vulgar fraction, which means that it has a horizontal fraction bar and that it
> takes up too much vertical space. (Admittedly, vulgar fractions may have
> horizontal fraction bars as well, but this is not suitable for on-screen
> viewing since the numbers get tiny, whereas a diagonal fraction bar only
> requires the numbers to be scaled to 60% vertically and 65% horizontally, as
> suggested in the PostScript Language Cookbook.)
>
> 2') There is a MathML attribute called `bevelled' which is indicates that at
> diagonal line should be used to separate numerator from denominator:
> <math xmlns="http://www.w3.org/1998/Math/MathML">
> <mfrac bevelled="true">
> <mn>3</mn>
> <mn>16</mn>
> </mfrac>
> </math>
> However, Firefox and Opera both display this as <small>3 / 16</small>, and the
> example given in the MathML specification
> <http://www.w3.org/TR/MathML3/image/f3008.gif> suggests that this is not
> really meant for vulgar fractions at all. This could still be a solution if
> <mfrac bevelled="true"/> is defined to correspond to a vulgar fraction if both
> numerator and denominator are <mn/> elements consisting of digits 0--9.
>
> 2'') Alternatively, a new attribute (e.g., `vulgar') could be added to cover
> this case.
>
> 3) If neither special handling of the fraction slash nor a MathML solution for
> vulgar/non-mathematical fractions is possible, the only remaining solution
> would be to add specific mark-up to HTML directly.
>
> (I am aware that fractions have been proposed earlier in the context of
> mathematical formulae, but I have not been able to find any previous
> discussion regarding vulgar fractions.)
Since HTML5 supports MathML natively now, it seems that MathML is the
solution to use here.
--
Ian Hickson U+1047E )\._.,--....,'``. fL
http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,.
Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
More information about the whatwg
mailing list