Bug 569195 - Add support for STIX Fonts 1.0. r=karlt

--HG--
rename : layout/mathml/mathfontSTIXSize1.properties => layout/mathml/mathfontSTIXSizeOneSym.properties
extra : rebase_source : 81a64bf6f150e759937ea6869a8786d08ebae686
This commit is contained in:
Frédéric Wang 2010-06-11 10:15:43 +12:00
parent 3388b0ef6e
commit 3063ebb55e
5 changed files with 143 additions and 8 deletions

View File

@ -101,6 +101,7 @@ font_properties = \
mathfontUnicode.properties \
mathfontSTIXNonUnicode.properties \
mathfontSTIXSize1.properties \
mathfontSTIXSizeOneSym.properties \
mathfontStandardSymbolsL.properties \
$(NULL)

View File

@ -53,9 +53,9 @@ mathfont_missing_dialog_message = To properly display the MathML on this page yo
# each font. Do not include the Unicode table in this list.
%ifdef XP_WIN
font.mathfont-glyph-tables = STIXNonUnicode, STIXSize1, Standard Symbols L, Symbol
font.mathfont-glyph-tables = STIXNonUnicode, STIXSizeOneSym, STIXSize1, Standard Symbols L, Symbol
%else
font.mathfont-glyph-tables = STIXNonUnicode, STIXSize1, Standard Symbols L
font.mathfont-glyph-tables = STIXNonUnicode, STIXSizeOneSym, STIXSize1, Standard Symbols L
%endif
# The ordered list of fonts with which to attempt to stretch MathML

View File

@ -42,13 +42,14 @@
# This file contains the list of some stretchy MathML chars that
# can be rendered with STIXSize* set of fonts,
# with some help from STIXNonUnicode.
# with some help from STIXNonUnicode and STIXGeneral.
external.1 = STIXNonUnicode
external.2 = STIXSize2
external.3 = STIXSize3
external.4 = STIXSize4
external.5 = STIXSize5
external.6 = STIXGeneral
# [ T/L | M | B/R | G | size0 ... size{N-1} ]
\u0028 = \u239B\uFFFD\u239D\u239C\uFFFD((@2(@3(@4 # (
@ -81,7 +82,7 @@ external.5 = STIXSize5
# E001 stix-radical symbol top corner
\u221A = \uE001@1\uFFFD\u221A@4\uE000@1\uFFFD\u221A\u221A@2\u221A@3 # Sqrt, radic
\u222B = \u2320\uFFFD\u2321\u23AE\u222B # Integral, int
\u222B = \u2320\uFFFD\u2321\u23AE\uFFFD\u222B@6 # Integral, int
\u27E8 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E8\u27E8@2\u27E8@3\u27E8@4 # LeftAngleBracket
\u27E9 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E9\u27E9@2\u27E9@3\u27E9@4 # RightAngleBracket

View File

@ -0,0 +1,133 @@
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla MathML Project.
#
# The Initial Developer of the Original Code is
# The University of Queensland.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Roger B. Sidje <rbs@maths.uq.edu.au>
# Karl Tomlinson <karlt+@karlt.net>, Mozilla Corporation
# Frederic Wang <fred.wang@free.fr>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# LOCALIZATION NOTE: FILE
# Do not translate anything in this file
# This file contains the list of some stretchy MathML chars that
# can be rendered with STIXSize* set of fonts,
# with some help from STIXNonUnicode, STIXGeneral and STIXIntegralsD.
external.1 = STIXNonUnicode
external.2 = STIXSizeTwoSym
external.3 = STIXSizeThreeSym
external.4 = STIXSizeFourSym
external.5 = STIXSizeFiveSym
external.6 = STIXGeneral
external.7 = STIXIntegralsD
# [ T/L | M | B/R | G | size0 ... size{N-1} ]
\u0028 = \u239B\uFFFD\u239D\u239C\uFFFD((@2(@3(@4 # (
\u0029 = \u239E\uFFFD\u23A0\u239F\uFFFD))@2)@3)@4 # )
\u005B = \u23A1\uFFFD\u23A3\u23A2\u005B[[@2[@3[@4 # [
\u005D = \u23A4\uFFFD\u23A6\u23A5\u005D]]@2]@3]@4 # ]
\u007B = \u23A7\u23A8\u23A9\u23AA\u007B{{@2{@3{@4 # {
\u007D = \u23AB\u23AC\u23AD\u23AA\u007D}}@2}@3}@4 # }
# N-ARY operators
\u2140 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2140 # DOUBLE-STRUCK N-ARY SUMMATION
\u220F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u220F # N-ARY PRODUCT
\u2210 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2210 # N-ARY COPRODUCT
\u2211 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2211 # N-ARY SUMMATION
\u22C0 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C0 # N-ARY LOGICAL AND
\u22C1 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C1 # N-ARY LOGICAL OR
\u22C2 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C2 # N-ARY INTERSECTION
\u22C3 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u22C3 # N-ARY UNION
\u2A00 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A00 # N-ARY CIRCLED DOT OPERATOR
\u2A01 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A01 # N-ARY CIRCLED PLUS OPERATOR
\u2A02 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A02 # N-ARY CIRCLED TIMES OPERATOR
\u2A03 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A03 # N-ARY UNION OPERATOR WITH DOT
\u2A04 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A04 # N-ARY UNION OPERATOR WITH PLUS
\u2A05 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A05 # N-ARY SQUARE INTERSECTION OPERATOR
\u2A06 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A06 # N-ARY SQUARE UNION OPERATOR
\u2A09 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A09 # N-ARY TIMES OPERATOR
\u2AFF = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2AFF # N-ARY WHITE VERTICAL BAR
# E000 stix-radical symbol vertical extender
# E001 stix-radical symbol top corner
\u221A = \uE001@1\uFFFD\u221A@4\uE000@1\uFFFD\u221A\u221A@2\u221A@3 # Sqrt, radic
# Integrals
\u222B = \u2320\uFFFD\u2321\u23AE\uFFFD\u222B@6\u222B@7
\u222C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222C@6\u222C@7
\u222D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222D@6\u222D@7
\u222E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222E@6\u222E@7
\u222F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u222F@6\u222F@7
\u2230 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2230@6\u2230@7
\u2231 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2231@6\u2231@7
\u2232 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2232@6\u2232@7
\u2233 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2233@6\u2233@7
\u2A0B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0B@6\u2A0B@7
\u2A0C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0C@6\u2A0C@7
\u2A0D = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0D@6\u2A0D@7
\u2A0E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0E@6\u2A0E@7
\u2A0F = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A0F@6\u2A0F@7
\u2A10 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A10@6\u2A10@7
\u2A11 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A11@6\u2A11@7
\u2A12 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A12@6\u2A12@7
\u2A13 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A13@6\u2A13@7
\u2A14 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A14@6\u2A14@7
\u2A15 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A15@6\u2A15@7
\u2A16 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A16@6\u2A16@7
\u2A17 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A17@6\u2A17@7
\u2A18 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A18@6\u2A18@7
\u2A19 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A19@6\u2A19@7
\u2A1A = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1A@6\u2A1A@7
\u2A1B = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1B@6\u2A1B@7
\u2A1C = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2A1C@6\u2A1C@7
\u27E8 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E8\u27E8@2\u27E8@3\u27E8@4 # LeftAngleBracket
\u27E9 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u27E9\u27E9@2\u27E9@3\u27E9@4 # RightAngleBracket
\u23DE = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DE\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # &OverBrace; (Unicode)
\uFE37 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DE\u23DE@2\u23DE@3\u23DE@4\u23DE@5 # &OverBrace; (MathML 2.0)
\u23B4 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23B4\u23B4@2\u23B4@3\u23B4@4\u23B4@5 # &OverBracket;
\u23DC = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DC\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # &OverParenthesis; (Unicode)
\uFE35 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DC\u23DC@2\u23DC@3\u23DC@4\u23DC@5 # &OverParenthesis; (MathML 2.0)
\u23DF = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DF\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # &UnderBrace; (Unicode)
\uFE38 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DF\u23DF@2\u23DF@3\u23DF@4\u23DF@5 # &UnderBrace; (MathML 2.0)
\u23B5 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23B5\u23B5@2\u23B5@3\u23B5@4\u23B5@5 # &UnderBracket;
\u23DD = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DD\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # &UnderParenthesis; (Unicode)
\uFE36 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u23DD\u23DD@2\u23DD@3\u23DD@4\u23DD@5 # &UnderParenthesis; (MathML 2.0)
\u005E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302\u0302@2\u0302@3\u0302@4\u0302@5 # circumflex accent, COMBINING CIRCUMFLEX ACCENT
\u02C6 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0302\u0302@2\u0302@3\u0302@4\u0302@5 # modifier letter circumflex accent, COMBINING CIRCUMFLEX ACCENT
\u007E = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303\u0303@2\u0303@3\u0303@4\u0303@5 # ~ tilde, COMBINING TILDE
\u02DC = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0303\u0303@2\u0303@3\u0303@4\u0303@5 # small tilde, COMBINING TILDE
\u02C7 = \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u030C\u030C@2\u030C@3\u030C@4\u030C@5 # caron, COMBINING CARON

View File

@ -967,7 +967,7 @@ pref("intl.uidirection.ar", "rtl");
pref("intl.uidirection.he", "rtl");
pref("intl.uidirection.fa", "rtl");
pref("font.mathfont-family", "STIXNonUnicode, STIXSize1, STIXGeneral, Standard Symbols L, DejaVu Sans, Cambria Math");
pref("font.mathfont-family", "STIXNonUnicode, STIXSizeOneSym, STIXSize1, STIXGeneral, Standard Symbols L, DejaVu Sans, Cambria Math");
// Some CJK fonts have bad underline offset, their CJK character glyphs are overlapped (or adjoined) to its underline.
// These fonts are ignored the underline offset, instead of it, the underline is lowered to bottom of its em descent.
@ -1629,7 +1629,7 @@ pref("font.size.variable.zh-HK", 16);
pref("font.size.fixed.zh-HK", 16);
// We have special support for Monotype Symbol on Windows.
pref("font.mathfont-family", "STIXNonUnicode, STIXSize1, STIXGeneral, Symbol, DejaVu Sans, Cambria Math");
pref("font.mathfont-family", "STIXNonUnicode, STIXSizeOneSym, STIXSize1, STIXGeneral, Symbol, DejaVu Sans, Cambria Math");
// cleartype settings - false implies default system settings
@ -2115,7 +2115,7 @@ pref("font.size.variable.zh-HK", 15);
pref("font.size.fixed.zh-HK", 16);
// Apple's Symbol is Unicode so use it
pref("font.mathfont-family", "STIXNonUnicode, STIXSize1, STIXGeneral, Symbol, DejaVu Sans, Cambria Math");
pref("font.mathfont-family", "STIXNonUnicode, STIXSizeOneSym, STIXSize1, STIXGeneral, Symbol, DejaVu Sans, Cambria Math");
// individual font faces to be treated as independent families
// names are Postscript names of each face
@ -2159,7 +2159,7 @@ pref("ui.key.menuAccessKeyFocuses", true);
pref("font.alias-list", "sans,sans-serif,serif,monospace,Tms Rmn,Helv,Courier,Times New Roman");
pref("font.mathfont-family", "STIXNonUnicode, STIXSize1, STIXGeneral, DejaVu Sans");
pref("font.mathfont-family", "STIXNonUnicode, STIXSizeOneSym, STIXSize1, STIXGeneral, DejaVu Sans");
// Languages only need lists if we have a default that might not be available.
// Tms Rmn and Helv cannot be used by Thebes but the OS/2 version of FontConfig