зеркало из https://github.com/mozilla/pjs.git
bug 152264 : add zh-HK langGroup so that fonts can be specified separately for zh-HK and zh-TW langGroups (r=katakai, sr=blizzard). L10N changes included.
This commit is contained in:
Родитель
f0c93660dd
Коммит
59f2bb2c3a
|
@ -182,6 +182,9 @@ static nsFontNodeArray* gGlobalList = nsnull;
|
|||
|
||||
static nsIAtom* gUnicode = nsnull;
|
||||
static nsIAtom* gUserDefined = nsnull;
|
||||
static nsIAtom* gZHTW = nsnull;
|
||||
static nsIAtom* gZHHK = nsnull;
|
||||
static nsIAtom* gZHTWHK = nsnull; // for fonts common to zh-TW and zh-HK
|
||||
static nsIAtom* gUsersLocale = nsnull;
|
||||
static nsIAtom* gWesternLocale = nsnull;
|
||||
|
||||
|
@ -303,6 +306,11 @@ static nsFontCharSetInfo ISO885911 =
|
|||
static nsFontCharSetInfo Big5 =
|
||||
{ "x-x-big5", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
// a kludge to distinguish zh-TW only fonts in Big5 (such as hpbig5-)
|
||||
// from zh-TW/zh-HK common fonts in Big5 (such as big5-1)
|
||||
static nsFontCharSetInfo Big5TWHK =
|
||||
{ "x-x-big5", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
static nsFontCharSetInfo CNS116431 =
|
||||
{ "x-cns-11643-1", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
|
@ -409,6 +417,8 @@ static nsFontLangGroup FLG_ARABIC = { "ar", nsnull };
|
|||
static nsFontLangGroup FLG_THAI = { "th", nsnull };
|
||||
static nsFontLangGroup FLG_ZHCN = { "zh-CN", nsnull };
|
||||
static nsFontLangGroup FLG_ZHTW = { "zh-TW", nsnull };
|
||||
static nsFontLangGroup FLG_ZHHK = { "zh-HK", nsnull };
|
||||
static nsFontLangGroup FLG_ZHTWHK = { "x-zh-TWHK", nsnull }; // TW + HK
|
||||
static nsFontLangGroup FLG_JA = { "ja", nsnull };
|
||||
static nsFontLangGroup FLG_KO = { "ko", nsnull };
|
||||
#ifdef SUNCTL
|
||||
|
@ -449,8 +459,15 @@ static nsFontCharSetMap gCharSetMap[] =
|
|||
{ "-ibm pc", &FLG_NONE, &Unknown },
|
||||
{ "adobe-fontspecific", &FLG_NONE, &Special },
|
||||
{ "ansi-1251", &FLG_RUSSIAN, &CP1251 },
|
||||
{ "big5-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5-1", &FLG_ZHTW, &Big5 },
|
||||
// On Solaris, big5-0 is used for ASCII-only fonts while in XFree86,
|
||||
// it's for Big5 fonts without US-ASCII. When a non-Solaris binary
|
||||
// is displayed on a Solaris X server, this would break.
|
||||
#ifndef SOLARIS
|
||||
{ "big5-0", &FLG_ZHTWHK, &Big5TWHK }, // for both TW and HK
|
||||
#else
|
||||
{ "big5-0", &FLG_ZHTW, &USASCII },
|
||||
#endif
|
||||
{ "big5-1", &FLG_ZHTWHK, &Big5TWHK }, // ditto
|
||||
{ "big5.et-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.et.ext-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.etext-0", &FLG_ZHTW, &Big5 },
|
||||
|
@ -458,7 +475,7 @@ static nsFontCharSetMap gCharSetMap[] =
|
|||
{ "big5.hku-1", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.pc-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.shift-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5hkscs-0", &FLG_ZHTW, &HKSCS },
|
||||
{ "big5hkscs-0", &FLG_ZHHK, &HKSCS },
|
||||
{ "cns11643.1986-1", &FLG_ZHTW, &CNS116431 },
|
||||
{ "cns11643.1986-2", &FLG_ZHTW, &CNS116432 },
|
||||
{ "cns11643.1992-1", &FLG_ZHTW, &CNS116431 },
|
||||
|
@ -494,7 +511,7 @@ static nsFontCharSetMap gCharSetMap[] =
|
|||
{ "gb18030.2000-1", &FLG_ZHCN, &GB18030_1 },
|
||||
{ "gbk-0", &FLG_ZHCN, &GBK },
|
||||
{ "gbk1988.1989-0", &FLG_ZHCN, &USASCII },
|
||||
{ "hkscs-1", &FLG_ZHTW, &HKSCS },
|
||||
{ "hkscs-1", &FLG_ZHHK, &HKSCS },
|
||||
{ "hp-japanese15", &FLG_NONE, &Unknown },
|
||||
{ "hp-japaneseeuc", &FLG_NONE, &Unknown },
|
||||
{ "hp-roman8", &FLG_NONE, &Unknown },
|
||||
|
@ -503,6 +520,7 @@ static nsFontCharSetMap gCharSetMap[] =
|
|||
{ "hp-tchinesebig5", &FLG_ZHTW, &Big5 },
|
||||
{ "hp-wa", &FLG_NONE, &Unknown },
|
||||
{ "hpbig5-", &FLG_ZHTW, &Big5 },
|
||||
{ "hphkbig5-", &FLG_ZHHK, &HKSCS },
|
||||
{ "hproc16-", &FLG_NONE, &Unknown },
|
||||
{ "ibm-1252", &FLG_NONE, &Unknown },
|
||||
{ "ibm-850", &FLG_NONE, &Unknown },
|
||||
|
@ -844,6 +862,9 @@ FreeGlobals(void)
|
|||
}
|
||||
NS_IF_RELEASE(gUnicode);
|
||||
NS_IF_RELEASE(gUserDefined);
|
||||
NS_IF_RELEASE(gZHTW);
|
||||
NS_IF_RELEASE(gZHHK);
|
||||
NS_IF_RELEASE(gZHTWHK);
|
||||
NS_IF_RELEASE(gUserDefinedConverter);
|
||||
NS_IF_RELEASE(gUsersLocale);
|
||||
NS_IF_RELEASE(gWesternLocale);
|
||||
|
@ -1091,6 +1112,21 @@ InitGlobals(nsIDeviceContext *aDevice)
|
|||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
gZHTW = NS_NewAtom("zh-TW");
|
||||
if (!gZHTW) {
|
||||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
gZHHK = NS_NewAtom("zh-HK");
|
||||
if (!gZHHK) {
|
||||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
gZHTWHK = NS_NewAtom("x-zh-TWHK");
|
||||
if (!gZHTWHK) {
|
||||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
// the user's locale
|
||||
nsCOMPtr<nsILanguageAtomService> langService;
|
||||
|
@ -4881,7 +4917,17 @@ SetFontLangGroupInfo(nsFontCharSetMap* aCharSetMap)
|
|||
if (!langGroup)
|
||||
langGroup = "";
|
||||
if (!fontLangGroup->mFontLangGroupAtom) {
|
||||
fontLangGroup->mFontLangGroupAtom = NS_NewAtom(langGroup);
|
||||
fontLangGroup->mFontLangGroupAtom = NS_NewAtom(langGroup);
|
||||
}
|
||||
|
||||
// hack : map 'x-zh-TWHK' to 'zh-TW' when retrieving font scaling-control
|
||||
// preferences via |Get*Pref|.
|
||||
// XXX : This would make the font scaling controls for
|
||||
// zh-HK NOT work if a font common to zh-TW and zh-HK (e.g. big5-0)
|
||||
// were chosen for zh-HK. An alternative would be to make it
|
||||
// locale-dependent. Even with that, it'd work only under zh-HK locale.
|
||||
if (fontLangGroup->mFontLangGroupAtom == gZHTWHK) {
|
||||
langGroup = "zh-TW";
|
||||
}
|
||||
|
||||
// get the font scaling controls
|
||||
|
@ -6192,9 +6238,9 @@ nsFontMetricsGTK::FindLangGroupFont(nsIAtom* aLangGroup, PRUint32 aChar, nsCStri
|
|||
// scan gCharSetMap for encodings with matching lang groups
|
||||
nsFontCharSetMap* charSetMap;
|
||||
for (charSetMap=gCharSetMap; charSetMap->mName; charSetMap++) {
|
||||
nsFontLangGroup* mFontLangGroup = charSetMap->mFontLangGroup;
|
||||
nsFontLangGroup* fontLangGroup = charSetMap->mFontLangGroup;
|
||||
|
||||
if ((!mFontLangGroup) || (!mFontLangGroup->mFontLangGroupName)) {
|
||||
if ((!fontLangGroup) || (!fontLangGroup->mFontLangGroupName)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -6202,12 +6248,17 @@ nsFontMetricsGTK::FindLangGroupFont(nsIAtom* aLangGroup, PRUint32 aChar, nsCStri
|
|||
SetCharsetLangGroup(charSetMap->mInfo);
|
||||
}
|
||||
|
||||
if (!mFontLangGroup->mFontLangGroupAtom) {
|
||||
if (!fontLangGroup->mFontLangGroupAtom) {
|
||||
SetFontLangGroupInfo(charSetMap);
|
||||
}
|
||||
|
||||
if ((aLangGroup != mFontLangGroup->mFontLangGroupAtom)
|
||||
&& (aLangGroup != charSetMap->mInfo->mLangGroup)) {
|
||||
// if font's langGroup is different from requested langGroup, continue.
|
||||
// An exception is that font's langGroup ZHTWHK is regarded as matching
|
||||
// both ZHTW and ZHHK (Freetype2 and Solaris).
|
||||
if ((aLangGroup != fontLangGroup->mFontLangGroupAtom) &&
|
||||
(aLangGroup != charSetMap->mInfo->mLangGroup) &&
|
||||
(fontLangGroup->mFontLangGroupAtom != gZHTWHK ||
|
||||
(aLangGroup != gZHHK && aLangGroup != gZHTW))) {
|
||||
continue;
|
||||
}
|
||||
// look for a font with this charset (registry-encoding) & char
|
||||
|
@ -6329,7 +6380,12 @@ EnumerateNode(void* aElement, void* aData)
|
|||
return PR_TRUE; // continue
|
||||
}
|
||||
else if (info->mLangGroup != gUnicode) {
|
||||
if (node->mCharSetInfo->mLangGroup != info->mLangGroup) {
|
||||
// if font's langGroup is different from requested langGroup, continue.
|
||||
// An exception is that font's langGroup ZHTWHK is regarded as matching
|
||||
// both ZHTW and ZHHK (Freetype2 and Solaris).
|
||||
if (node->mCharSetInfo->mLangGroup != info->mLangGroup &&
|
||||
(node->mCharSetInfo->mLangGroup != gZHTWHK ||
|
||||
(info->mLangGroup != gZHHK && info->mLangGroup != gZHTW))) {
|
||||
return PR_TRUE; // continue
|
||||
}
|
||||
}
|
||||
|
|
|
@ -420,7 +420,7 @@ void nsUnicodeFontMappingMac::InitByLangGroup(const nsString& aLangGroup)
|
|||
} else if(gUtil->ScriptEnabled(smKorean) && aLangGroup.EqualsIgnoreCase("ko"))
|
||||
{
|
||||
FillVarBlockToScript(smKorean, mPrivBlockToScript);
|
||||
} else if(gUtil->ScriptEnabled(smTradChinese) && aLangGroup.EqualsIgnoreCase("zh-TW"))
|
||||
} else if((gUtil->ScriptEnabled(smTradChinese)) && ((aLangGroup.EqualsIgnoreCase("zh-TW")) || (aLangGroup.EqualsIgnoreCase("zh-HK"))))
|
||||
{
|
||||
FillVarBlockToScript(smTradChinese, mPrivBlockToScript);
|
||||
} else if(gUtil->ScriptEnabled(smJapanese) && aLangGroup.EqualsIgnoreCase("ja"))
|
||||
|
|
|
@ -275,6 +275,10 @@ ScriptCode nsUnicodeMappingUtil::MapLangGroupToScriptCode(const char* aLangGroup
|
|||
if(0==nsCRT::strcmp(aLangGroup, "zh-TW")) {
|
||||
return smTradChinese;
|
||||
} else
|
||||
// No separate script code for zh-HK. Use smTradChinese.
|
||||
if(0==nsCRT::strcmp(aLangGroup, "zh-HK")) {
|
||||
return smTradChinese;
|
||||
} else
|
||||
if(0==nsCRT::strcmp(aLangGroup, "x-unicode")) {
|
||||
return (smPseudoUnicode);
|
||||
} else
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
* Pierre Phaneuf <pp@ludusdesign.com>
|
||||
* Jungshik Shin <jshin@mailaps.org>
|
||||
*
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
|
@ -154,6 +155,7 @@ static nsIAtom* gJA = nsnull;
|
|||
static nsIAtom* gKO = nsnull;
|
||||
static nsIAtom* gZHTW = nsnull;
|
||||
static nsIAtom* gZHCN = nsnull;
|
||||
static nsIAtom* gZHHK = nsnull;
|
||||
|
||||
static int gInitialized = 0;
|
||||
static PRBool gDoingLineheightFixup = PR_FALSE;
|
||||
|
@ -197,6 +199,7 @@ FreeGlobals(void)
|
|||
NS_IF_RELEASE(gKO);
|
||||
NS_IF_RELEASE(gZHTW);
|
||||
NS_IF_RELEASE(gZHCN);
|
||||
NS_IF_RELEASE(gZHHK);
|
||||
|
||||
// free CMap
|
||||
if (nsFontMetricsWin::gFontMaps) {
|
||||
|
@ -336,6 +339,11 @@ InitGlobals(void)
|
|||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
gZHHK = NS_NewAtom("zh-HK");
|
||||
if (!gZHHK) {
|
||||
FreeGlobals();
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
//register an observer to take care of cleanup
|
||||
gFontCleanupObserver = new nsFontCleanupObserver();
|
||||
|
@ -443,6 +451,7 @@ nsFontMetricsWin::Init(const nsFont& aFont, nsIAtom* aLangGroup,
|
|||
CheckFontLangGroup(mLangGroup, gKO, "ko");
|
||||
CheckFontLangGroup(mLangGroup, gZHTW, "zh-TW");
|
||||
CheckFontLangGroup(mLangGroup, gZHCN, "zh-CN");
|
||||
CheckFontLangGroup(mLangGroup, gZHHK, "zh-HK");
|
||||
}
|
||||
|
||||
//don't addref this to avoid circular refs
|
||||
|
@ -3348,7 +3357,8 @@ nsFontMetricsWin::FindGenericFont(HDC aDC, PRUint32 aChar)
|
|||
return nsnull;
|
||||
}
|
||||
|
||||
#define IsCJKLangGroupAtom(a) ((a)==gJA || (a)==gKO || (a)==gZHCN || (a)==gZHTW)
|
||||
#define IsCJKLangGroupAtom(a) ((a)==gJA || (a)==gKO || (a)==gZHCN || \
|
||||
(a)==gZHTW || (a) == gZHHK)
|
||||
|
||||
nsFontWin*
|
||||
nsFontMetricsWin::FindPrefFont(HDC aDC, PRUint32 aChar)
|
||||
|
@ -3412,6 +3422,9 @@ nsFontMetricsWin::FindPrefFont(HDC aDC, PRUint32 aChar)
|
|||
if (mLangGroup != gZHTW && gUsersLocale != gZHTW && gSystemLocale != gZHTW)
|
||||
AppendGenericFontFromPref(font.name, "zh-TW",
|
||||
NS_ConvertUCS2toUTF8(mGeneric).get());
|
||||
if (mLangGroup != gZHHK && gUsersLocale != gZHHK && gSystemLocale != gZHHK)
|
||||
AppendGenericFontFromPref(font.name, "zh-HK",
|
||||
NS_ConvertUCS2toUTF8(mGeneric).get());
|
||||
if (mLangGroup != gKO && gUsersLocale != gKO && gSystemLocale != gKO)
|
||||
AppendGenericFontFromPref(font.name, "ko",
|
||||
NS_ConvertUCS2toUTF8(mGeneric).get());
|
||||
|
@ -5321,6 +5334,10 @@ SignatureMatchesLangGroup(FONTSIGNATURE* aSignature,
|
|||
{
|
||||
int dword;
|
||||
|
||||
// hack : FONTSIGNATURE in Win32 doesn't have a separate signature field
|
||||
// for zh-HK. We have to treat it as zh-TW.
|
||||
const char *langGroup = strcmp(aLangGroup, "zh-HK") ? aLangGroup : "zh-TW";
|
||||
|
||||
// For scripts that have been supported by 'ANSI' codepage in Win9x/ME,
|
||||
// we can rely on fsCsb.
|
||||
DWORD* array = aSignature->fsCsb;
|
||||
|
@ -5329,7 +5346,7 @@ SignatureMatchesLangGroup(FONTSIGNATURE* aSignature,
|
|||
for (int bit = 0; bit < sizeof(DWORD) * 8; ++bit) {
|
||||
if ((array[dword] >> bit) & 1) {
|
||||
if (!strcmp(gCharsetInfo[gCharsetToIndex[gBitToCharset[i]]].mLangGroup,
|
||||
aLangGroup)) {
|
||||
langGroup)) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
@ -5345,7 +5362,7 @@ SignatureMatchesLangGroup(FONTSIGNATURE* aSignature,
|
|||
// x-western .. zh-TW. (exclude JOHAB)
|
||||
for (i = eCharset_ANSI; i <= eCharset_CHINESEBIG5; ++i)
|
||||
{
|
||||
if (!strcmp(gCharsetInfo[i].mLangGroup, aLangGroup))
|
||||
if (!strcmp(gCharsetInfo[i].mLangGroup, langGroup))
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -5359,7 +5376,7 @@ SignatureMatchesLangGroup(FONTSIGNATURE* aSignature,
|
|||
if ((array[dword] >> bit) & 1) {
|
||||
PRUint8 range = gBitToUnicodeRange[i];
|
||||
if (kRangeSpecificItemNum > range &&
|
||||
!strcmp(gUnicodeRangeToLangGroupTable[range], aLangGroup)) {
|
||||
!strcmp(gUnicodeRangeToLangGroupTable[range], langGroup)) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -177,6 +177,9 @@ public:
|
|||
|
||||
nsCOMPtr<nsIAtom> mUnicode;
|
||||
nsCOMPtr<nsIAtom> mUserDefined;
|
||||
nsCOMPtr<nsIAtom> mZHTW;
|
||||
nsCOMPtr<nsIAtom> mZHHK;
|
||||
nsCOMPtr<nsIAtom> mZHTWHK; // common to TW and HK
|
||||
nsCOMPtr<nsIAtom> mUsersLocale;
|
||||
nsCOMPtr<nsIAtom> mWesternLocale;
|
||||
|
||||
|
@ -368,6 +371,11 @@ static nsFontCharSetInfoXlib ISO885911 =
|
|||
static nsFontCharSetInfoXlib Big5 =
|
||||
{ "x-x-big5", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
// a kludge to distinguish zh-TW only fonts in Big5 (such as hpbig5-)
|
||||
// from zh-TW/zh-HK common fonts in Big5 (such as big5-0, big5-1)
|
||||
static nsFontCharSetInfoXlib Big5TWHK =
|
||||
{ "x-x-big5", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
static nsFontCharSetInfoXlib CNS116431 =
|
||||
{ "x-cns-11643-1", DoubleByteConvert, 1,
|
||||
TT_OS2_CPR1_CHINESE_TRAD, 0 };
|
||||
|
@ -474,6 +482,8 @@ static nsFontLangGroupXlib FLG_ARABIC = { "ar", nsnull };
|
|||
static nsFontLangGroupXlib FLG_THAI = { "th", nsnull };
|
||||
static nsFontLangGroupXlib FLG_ZHCN = { "zh-CN", nsnull };
|
||||
static nsFontLangGroupXlib FLG_ZHTW = { "zh-TW", nsnull };
|
||||
static nsFontLangGroupXlib FLG_ZHHK = { "zh-HK", nsnull };
|
||||
static nsFontLangGroupXlib FLG_ZHTWHK = { "x-zh-TWHK", nsnull };
|
||||
static nsFontLangGroupXlib FLG_JA = { "ja", nsnull };
|
||||
static nsFontLangGroupXlib FLG_KO = { "ko", nsnull };
|
||||
#ifdef SUNCTL
|
||||
|
@ -514,8 +524,15 @@ static const nsFontCharSetMapXlib gConstCharSetMap[] =
|
|||
{ "-ibm pc", &FLG_NONE, &Unknown },
|
||||
{ "adobe-fontspecific", &FLG_NONE, &Special },
|
||||
{ "ansi-1251", &FLG_RUSSIAN, &CP1251 },
|
||||
{ "big5-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5-1", &FLG_ZHTW, &Big5 },
|
||||
// On Solaris, big5-0 is used for ASCII-only fonts while in XFree86,
|
||||
// it's for Big5 fonts without US-ASCII. When a non-Solaris binary
|
||||
// is displayed on a Solaris X server, this would break.
|
||||
#ifndef SOLARIS
|
||||
{ "big5-0", &FLG_ZHTWHK, &Big5TWHK }, // common to TW/HK
|
||||
#else
|
||||
{ "big5-0", &FLG_ZHTW, &USASCII },
|
||||
#endif
|
||||
{ "big5-1", &FLG_ZHTWHK, &Big5TWHK }, // ditto
|
||||
{ "big5.et-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.et.ext-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.etext-0", &FLG_ZHTW, &Big5 },
|
||||
|
@ -523,7 +540,7 @@ static const nsFontCharSetMapXlib gConstCharSetMap[] =
|
|||
{ "big5.hku-1", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.pc-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5.shift-0", &FLG_ZHTW, &Big5 },
|
||||
{ "big5hkscs-0", &FLG_ZHTW, &HKSCS },
|
||||
{ "big5hkscs-0", &FLG_ZHHK, &HKSCS },
|
||||
{ "cns11643.1986-1", &FLG_ZHTW, &CNS116431 },
|
||||
{ "cns11643.1986-2", &FLG_ZHTW, &CNS116432 },
|
||||
{ "cns11643.1992-1", &FLG_ZHTW, &CNS116431 },
|
||||
|
@ -559,7 +576,7 @@ static const nsFontCharSetMapXlib gConstCharSetMap[] =
|
|||
{ "gb18030.2000-1", &FLG_ZHCN, &GB18030_1 },
|
||||
{ "gbk-0", &FLG_ZHCN, &GBK },
|
||||
{ "gbk1988.1989-0", &FLG_ZHCN, &USASCII },
|
||||
{ "hkscs-1", &FLG_ZHTW, &HKSCS },
|
||||
{ "hkscs-1", &FLG_ZHHK, &HKSCS },
|
||||
{ "hp-japanese15", &FLG_NONE, &Unknown },
|
||||
{ "hp-japaneseeuc", &FLG_NONE, &Unknown },
|
||||
{ "hp-roman8", &FLG_NONE, &Unknown },
|
||||
|
@ -568,6 +585,7 @@ static const nsFontCharSetMapXlib gConstCharSetMap[] =
|
|||
{ "hp-tchinesebig5", &FLG_ZHTW, &Big5 },
|
||||
{ "hp-wa", &FLG_NONE, &Unknown },
|
||||
{ "hpbig5-", &FLG_ZHTW, &Big5 },
|
||||
{ "hphkbig5-", &FLG_ZHHK, &HKSCS },
|
||||
{ "hproc16-", &FLG_NONE, &Unknown },
|
||||
{ "ibm-1252", &FLG_NONE, &Unknown },
|
||||
{ "ibm-850", &FLG_NONE, &Unknown },
|
||||
|
@ -1442,6 +1460,18 @@ nsFontMetricsXlibContext::Init(nsIDeviceContext *aDevice, PRBool aPrintermode)
|
|||
if (!mUserDefined) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
mZHTW = NS_NewAtom("zh-TW");
|
||||
if (!mZHTW) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
mZHHK = NS_NewAtom("zh-HK");
|
||||
if (!mZHHK) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
mZHTWHK = NS_NewAtom("x-zh-TWHK");
|
||||
if (!mZHTWHK) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
// the user's locale
|
||||
nsCOMPtr<nsILanguageAtomService> langService;
|
||||
|
@ -4169,6 +4199,11 @@ SetFontLangGroupInfo(nsFontMetricsXlibContext *aFmctx, const nsFontCharSetMapXli
|
|||
fontLangGroup->mFontLangGroupAtom = NS_NewAtom(langGroup);
|
||||
}
|
||||
|
||||
// hack : map 'x-zh-TWHK' to 'zh-TW'. See nsFontMetricsGTK.cpp for details.
|
||||
if (fontLangGroup->mFontLangGroupAtom == aFmctx->mZHTWHK) {
|
||||
langGroup = "zh-TW";
|
||||
}
|
||||
|
||||
// get the font scaling controls
|
||||
nsFontCharSetInfoXlib *charSetInfo = aCharSetMap->mInfo;
|
||||
if (!charSetInfo->mInitedSizeInfo) {
|
||||
|
@ -5527,9 +5562,9 @@ nsFontMetricsXlib::FindLangGroupFont(nsIAtom* aLangGroup, PRUnichar aChar, nsCSt
|
|||
// scan mCharSetMap for encodings with matching lang groups
|
||||
const nsFontCharSetMapXlib* charSetMap;
|
||||
for (charSetMap=mFontMetricsContext->mCharSetMap; charSetMap->mName; charSetMap++) {
|
||||
nsFontLangGroupXlib* mFontLangGroup = charSetMap->mFontLangGroup;
|
||||
nsFontLangGroupXlib* fontLangGroup = charSetMap->mFontLangGroup;
|
||||
|
||||
if ((!mFontLangGroup) || (!mFontLangGroup->mFontLangGroupName)) {
|
||||
if ((!fontLangGroup) || (!fontLangGroup->mFontLangGroupName)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -5537,12 +5572,17 @@ nsFontMetricsXlib::FindLangGroupFont(nsIAtom* aLangGroup, PRUnichar aChar, nsCSt
|
|||
SetCharsetLangGroup(mFontMetricsContext, charSetMap->mInfo);
|
||||
}
|
||||
|
||||
if (!mFontLangGroup->mFontLangGroupAtom) {
|
||||
if (!fontLangGroup->mFontLangGroupAtom) {
|
||||
SetFontLangGroupInfo(mFontMetricsContext, charSetMap);
|
||||
}
|
||||
|
||||
if ((aLangGroup != mFontLangGroup->mFontLangGroupAtom)
|
||||
&& (aLangGroup != charSetMap->mInfo->mLangGroup)) {
|
||||
// if font's langGroup is different from requested langGroup, continue.
|
||||
// An exception is that font's langGroup ZHTWHK is regarded as matching
|
||||
// both ZHTW and ZHHK (Freetype2 and Solaris).
|
||||
if ((aLangGroup != fontLangGroup->mFontLangGroupAtom) &&
|
||||
(aLangGroup != charSetMap->mInfo->mLangGroup) &&
|
||||
(fontLangGroup->mFontLangGroupAtom != mFontMetricsContext->mZHTWHK ||
|
||||
(aLangGroup != mFontMetricsContext->mZHHK && aLangGroup != mFontMetricsContext->mZHTW))) {
|
||||
continue;
|
||||
}
|
||||
// look for a font with this charset (registry-encoding) & char
|
||||
|
@ -5666,7 +5706,13 @@ EnumerateNode(void* aElement, void* aData)
|
|||
return PR_TRUE; // continue
|
||||
}
|
||||
else if (info->mLangGroup != aFmctx->mUnicode) {
|
||||
if (node->mCharSetInfo->mLangGroup != info->mLangGroup) {
|
||||
// if font's langGroup is different from requested langGroup, continue.
|
||||
// An exception is that font's langGroup ZHTWHK(big5-1, big5-0) matches
|
||||
// both ZHTW and ZHHK (Freetype2 and Solaris).
|
||||
if (node->mCharSetInfo->mLangGroup != info->mLangGroup &&
|
||||
(node->mCharSetInfo->mLangGroup != aFmctx->mZHTWHK ||
|
||||
(info->mLangGroup != aFmctx->mZHHK &&
|
||||
info->mLangGroup != aFmctx->mZHTW))) {
|
||||
return PR_TRUE; // continue
|
||||
}
|
||||
}
|
||||
|
|
|
@ -56,15 +56,12 @@ sq=x-western
|
|||
sr=x-cyrillic
|
||||
sv=x-western
|
||||
ta=x-tamil
|
||||
# to be remapped to x-tamil when bug 204586 is resolved and fontconfig
|
||||
# with the revised ta.orth file is widely deployed (fontconfig bug #84)
|
||||
#ta=x-unicode
|
||||
th=th
|
||||
tr=tr
|
||||
uk=x-cyrillic
|
||||
zh-cn=zh-CN
|
||||
zh-tw=zh-TW
|
||||
zh-hk=zh-TW
|
||||
zh-hk=zh-HK
|
||||
zh=zh-CN
|
||||
#
|
||||
#==============================
|
||||
|
|
|
@ -78,14 +78,14 @@ x-johab.notForOutgoing = true
|
|||
|
||||
adobe-symbol-encoding.LangGroup = el
|
||||
big5.LangGroup = zh-TW
|
||||
big5-hkscs.LangGroup = zh-TW
|
||||
big5-hkscs.LangGroup = zh-HK
|
||||
euc-jp.LangGroup = ja
|
||||
euc-kr.LangGroup = ko
|
||||
gb2312.LangGroup = zh-CN
|
||||
gb18030.LangGroup = zh-CN
|
||||
gb18030.2000-0.LangGroup = zh-CN
|
||||
gb18030.2000-1.LangGroup = zh-CN
|
||||
hkscs-1.LangGroup = zh-TW
|
||||
hkscs-1.LangGroup = zh-HK
|
||||
hz-gb-2312.LangGroup = zh-CN
|
||||
ibm850.LangGroup = x-western
|
||||
ibm852.LangGroup = x-central-euro
|
||||
|
|
|
@ -82,3 +82,6 @@ pref("font.size.fixed.zh-CN", 16);
|
|||
pref("font.size.variable.zh-TW", 16);
|
||||
pref("font.size.fixed.zh-TW", 16);
|
||||
|
||||
pref("font.size.variable.zh-HK", 16);
|
||||
pref("font.size.fixed.zh-HK", 16);
|
||||
|
||||
|
|
|
@ -1,210 +0,0 @@
|
|||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: NPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* 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 NPL, 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 NPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
// Mac specific preference defaults
|
||||
pref("browser.drag_out_of_frame_style", 1);
|
||||
pref("ui.key.saveLink.shift", false); // true = shift, false = meta
|
||||
|
||||
// should a GURL event open a new window or re-use (4.x compat)
|
||||
pref("browser.always_reuse_window", false);
|
||||
|
||||
pref("mail.notification.sound", "");
|
||||
pref("mail.close_message_window.on_delete", true);
|
||||
pref("mail.close_message_window.on_file", true);
|
||||
|
||||
pref("mail.server_type_on_restart", -1);
|
||||
|
||||
// default font name (in UTF8)
|
||||
|
||||
pref("font.name.serif.ar", "ثلث أبيض");
|
||||
pref("font.name.sans-serif.ar", "البيان");
|
||||
pref("font.name.monospace.ar", "جيزة");
|
||||
pref("font.name.cursive.ar", "XXX.cursive");
|
||||
pref("font.name.fantasy.ar", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.el", "Times GR");
|
||||
pref("font.name.sans-serif.el", "Helvetica GR");
|
||||
pref("font.name.monospace.el", "Courier GR");
|
||||
pref("font.name.cursive.el", "XXX.cursive");
|
||||
pref("font.name.fantasy.el", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.he", "פנינים חדש");
|
||||
pref("font.name.sans-serif.he", "אריאל");
|
||||
pref("font.name.monospace.he", "אריאל");
|
||||
pref("font.name.cursive.he", "XXX.cursive");
|
||||
pref("font.name.fantasy.he", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.ja", "ヒラギノ明朝 Pro W3");
|
||||
pref("font.name.sans-serif.ja", "ヒラギノ角ゴ Pro W3");
|
||||
pref("font.name.monospace.ja", "Osaka−等幅");
|
||||
pref("font.name.cursive.ja", "XXX.cursive");
|
||||
pref("font.name.fantasy.ja", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.ko", "AppleMyungjo");
|
||||
pref("font.name.sans-serif.ko", "AppleGothic");
|
||||
pref("font.name.monospace.ko", "AppleGothic");
|
||||
pref("font.name.cursive.ko", "XXX.cursive");
|
||||
pref("font.name.fantasy.ko", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.th", "Thonburi");
|
||||
pref("font.name.sans-serif.th", "Krungthep");
|
||||
pref("font.name.monospace.th", "Ayuthaya");
|
||||
pref("font.name.cursive.th", "XXX.cursive");
|
||||
pref("font.name.fantasy.th", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.tr", "Times");
|
||||
pref("font.name.sans-serif.tr", "Arial");
|
||||
pref("font.name.monospace.tr", "CourierR");
|
||||
pref("font.name.cursive.tr", "XXX.cursive");
|
||||
pref("font.name.fantasy.tr", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.x-baltic", "Times CE");
|
||||
pref("font.name.sans-serif.x-baltic", "Helvetica CE");
|
||||
pref("font.name.monospace.x-baltic", "Courier CE");
|
||||
pref("font.name.cursive.x-baltic", "XXX.cursive");
|
||||
pref("font.name.fantasy.x-baltic", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.x-central-euro", "Times CE");
|
||||
pref("font.name.sans-serif.x-central-euro", "Helvetica CE");
|
||||
pref("font.name.monospace.x-central-euro", "Courier CE");
|
||||
pref("font.name.cursive.x-central-euro", "XXX.cursive");
|
||||
pref("font.name.fantasy.x-central-euro", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.x-cyrillic", "Latinski");
|
||||
pref("font.name.sans-serif.x-cyrillic", "Pryamoy Prop");
|
||||
pref("font.name.monospace.x-cyrillic", "APC Courier");
|
||||
pref("font.name.cursive.x-cyrillic", "XXX.cursive");
|
||||
pref("font.name.fantasy.x-cyrillic", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.x-unicode", "Times");
|
||||
pref("font.name.sans-serif.x-unicode", "Helvetica");
|
||||
pref("font.name.monospace.x-unicode", "Courier");
|
||||
pref("font.name.cursive.x-unicode", "Apple Chancery");
|
||||
pref("font.name.fantasy.x-unicode", "Gadget");
|
||||
|
||||
pref("font.name.serif.x-western", "Times");
|
||||
pref("font.name.sans-serif.x-western", "Helvetica");
|
||||
pref("font.name.monospace.x-western", "Courier");
|
||||
pref("font.name.cursive.x-western", "Apple Chancery");
|
||||
pref("font.name.fantasy.x-western", "Gadget");
|
||||
|
||||
pref("font.name.serif.zh-CN", "Song");
|
||||
pref("font.name.sans-serif.zh-CN", "Hei");
|
||||
pref("font.name.monospace.zh-CN", "Hei");
|
||||
pref("font.name.cursive.zh-CN", "XXX.cursive");
|
||||
pref("font.name.fantasy.zh-CN", "XXX.fantasy");
|
||||
|
||||
pref("font.name.serif.zh-TW", "Apple LiSung Light");
|
||||
pref("font.name.sans-serif.zh-TW", "Apple LiGothic Medium");
|
||||
pref("font.name.monospace.zh-TW", "Apple LiGothic Medium");
|
||||
pref("font.name.cursive.zh-TW", "XXX.cursive");
|
||||
pref("font.name.fantasy.zh-TW", "XXX.fantasy");
|
||||
|
||||
pref("font.default", "serif");
|
||||
pref("font.size.variable.ar", 16);
|
||||
pref("font.size.fixed.ar", 13);
|
||||
|
||||
pref("font.size.variable.el", 16);
|
||||
pref("font.size.fixed.el", 13);
|
||||
|
||||
pref("font.size.variable.he", 16);
|
||||
pref("font.size.fixed.he", 13);
|
||||
|
||||
pref("font.size.variable.ja", 14);
|
||||
pref("font.size.fixed.ja", 14);
|
||||
|
||||
pref("font.size.variable.ko", 16);
|
||||
pref("font.size.fixed.ko", 16);
|
||||
|
||||
pref("font.size.variable.th", 16);
|
||||
pref("font.size.fixed.th", 13);
|
||||
|
||||
pref("font.size.variable.tr", 16);
|
||||
pref("font.size.fixed.tr", 13);
|
||||
|
||||
pref("font.size.variable.x-baltic", 16);
|
||||
pref("font.size.fixed.x-baltic", 13);
|
||||
|
||||
pref("font.size.variable.x-central-euro", 16);
|
||||
pref("font.size.fixed.x-central-euro", 13);
|
||||
|
||||
pref("font.size.variable.x-cyrillic", 16);
|
||||
pref("font.size.fixed.x-cyrillic", 13);
|
||||
|
||||
pref("font.size.variable.x-unicode", 16);
|
||||
pref("font.size.fixed.x-unicode", 13);
|
||||
|
||||
pref("font.size.variable.x-western", 16);
|
||||
pref("font.size.fixed.x-western", 13);
|
||||
|
||||
pref("font.size.variable.zh-CN", 15);
|
||||
pref("font.size.fixed.zh-CN", 16);
|
||||
|
||||
pref("font.size.variable.zh-TW", 15);
|
||||
pref("font.size.fixed.zh-TW", 16);
|
||||
|
||||
pref("browser.urlbar.clickAtEndSelects", false);
|
||||
|
||||
// Tab focus model bit field:
|
||||
// 1 focuses text controls, 2 focuses other form elements, 4 adds links.
|
||||
pref("accessibility.tabfocus", 1);
|
||||
|
||||
pref("accessibility.typeaheadfind.soundURL", "beep");
|
||||
|
||||
// Override the Windows settings: no menu key, meta accelerator key. ctrl for general access key in HTML/XUL
|
||||
// Use 17 for Ctrl, 18 for Option, 224 for Cmd, 0 for none
|
||||
pref("ui.key.menuAccessKey", 0);
|
||||
pref("ui.key.accelKey", 224);
|
||||
// (pinkerton, joki, saari) IE5 for mac uses Control for access keys. The HTML4 spec
|
||||
// suggests to use command on mac, but this really sucks (imagine someone having a "q"
|
||||
// as an access key and not letting you quit the app!). As a result, we've made a
|
||||
// command decision 1 day before tree lockdown to change it to the control key.
|
||||
pref("ui.key.generalAccessKey", 17);
|
||||
|
||||
// print_extra_margin enables platforms to specify an extra gap or margin
|
||||
// around the content of the page for Print Preview only
|
||||
pref("print.print_extra_margin", 90); // twips (90 twips is an eigth of an inch)
|
||||
|
||||
// This indicates whether it should use the native dialog or the XP Dialog
|
||||
pref("print.use_native_print_dialog", true);
|
||||
|
||||
// determines the behavior upon starting a download.
|
||||
// 0 - open the download manager
|
||||
// 1 - open a progress dialog
|
||||
// 2 - do nothing
|
||||
|
||||
pref("browser.downloadmanager.behavior", 1);
|
|
@ -109,6 +109,12 @@ pref("font.name-list.serif.zh-TW", "Times New Roman WT TC, Times New Roman MT 30
|
|||
pref("font.name.sans-serif.zh-TW", "Helv");
|
||||
pref("font.name.monospace.zh-TW", "Courier");
|
||||
|
||||
// XXX : just copied values for zh-TW. TO CHANGE if necessary
|
||||
pref("font.name.serif.zh-HK", "Times New Roman WT TC");
|
||||
pref("font.name-list.serif.zh-HK", "Times New Roman WT TC, Times New Roman MT 30, Tms Rmn");
|
||||
pref("font.name.sans-serif.zh-HK", "Helv");
|
||||
pref("font.name.monospace.zh-HK", "Courier");
|
||||
|
||||
pref("font.default", "serif");
|
||||
pref("font.size.variable.ar", 16);
|
||||
pref("font.size.fixed.ar", 13);
|
||||
|
@ -152,6 +158,9 @@ pref("font.size.fixed.zh-CN", 16);
|
|||
pref("font.size.variable.zh-TW", 16);
|
||||
pref("font.size.fixed.zh-TW", 16);
|
||||
|
||||
pref("font.size.variable.zh-HK", 16);
|
||||
pref("font.size.fixed.zh-HK", 16);
|
||||
|
||||
pref("font.size.nav4rounding", false);
|
||||
|
||||
pref("netinst.profile.show_profile_wizard", true);
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
*
|
||||
* Contributor(s):
|
||||
* Roland Mainz <roland.mainz@informatik.med.uni-giessen.de>
|
||||
* Jungshik Shin <jshin@mailaps.org>
|
||||
*
|
||||
* 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
|
||||
|
@ -184,6 +185,12 @@ pref("font.name.serif.zh-CN", "isas-song ti-gb2312.1980-0");
|
|||
pref("font.name.sans-serif.zh-CN", "isas-song ti-gb2312.1980-0");
|
||||
pref("font.name.monospace.zh-CN", "isas-song ti-gb2312.1980-0");
|
||||
|
||||
// ming_uni.ttf (HKSCS-2001)
|
||||
// http://www.info.gov.hk/digital21/eng/hkscs/download/uime.exe
|
||||
pref("font.name.serif.zh-HK", "-arphic-Ming for ISO10646-big5hkscs-0");
|
||||
pref("font.name.sans-serif.zh-HK", "-arphic-Ming for ISO10646-big5hkscs-0");
|
||||
pref("font.name.monospace.zh-HK", "-arphic-Ming for ISO10646-big5hkscs-0");
|
||||
|
||||
// zh-TW
|
||||
|
||||
pref("font.default", "serif");
|
||||
|
@ -229,6 +236,9 @@ pref("font.size.fixed.zh-CN", 16);
|
|||
pref("font.size.variable.zh-TW", 16);
|
||||
pref("font.size.fixed.zh-TW", 16);
|
||||
|
||||
pref("font.size.variable.zh-HK", 16);
|
||||
pref("font.size.fixed.zh-HK", 16);
|
||||
|
||||
// below a certian pixel size outline scaled fonts produce poor results
|
||||
pref("font.scale.outline.min", 6);
|
||||
|
||||
|
@ -248,6 +258,16 @@ pref("font.scale.tt_bitmap.dark_text.gain", "0.8");
|
|||
//pref("font.directory.truetype.1", "/u/sam/tt_font1");
|
||||
//pref("font.directory.truetype.2", "/u/sam/tt_font2");
|
||||
//pref("font.directory.truetype.3", "/u/sam/tt_font3");
|
||||
pref("font.directory.truetype.1", "/home/jungshik/.fonts.ft2");
|
||||
pref("font.directory.truetype.2", "/usr/local/share/fonts/ttf");
|
||||
pref("font.directory.truetype.3", "/home/jungshik/.fonts.ft2/math/MathTTF");
|
||||
pref("font.directory.truetype.4", "/home/jungshik/.fonts.ft2/math");
|
||||
pref("font.directory.truetype.5", "/home/jungshik/.fonts.ft2/math/texcm-ttf");
|
||||
pref("font.directory.truetype.6", "/home/jungshik/.fonts.ft2/tamil");
|
||||
pref("font.directory.truetype.7", "/usr/share/fonts/TIS-620/TrueType");
|
||||
pref("font.directory.truetype.8", "/home/jungshik/.fonts.ft2/Indic");
|
||||
pref("font.directory.truetype.9", "/home/jungshik/.fonts.ft2/symbol");
|
||||
pref("font.directory.truetype.10", "/home/jungshik/.fonts.ft2/zh");
|
||||
pref("font.FreeType2.printing", true);
|
||||
|
||||
// below a certian pixel size anti-aliased bitmat scaled fonts
|
||||
|
@ -294,6 +314,13 @@ pref("font.scale.bitmap.min.zh-TW", 16);
|
|||
pref("font.scale.bitmap.undersize.zh-TW", 80);
|
||||
pref("font.scale.bitmap.oversize.zh-TW", 120);
|
||||
|
||||
pref("font.scale.outline.min.zh-HK", 10);
|
||||
pref("font.scale.aa_bitmap.min.zh-HK", 12);
|
||||
pref("font.scale.aa_bitmap.always.zh-HK", false);
|
||||
pref("font.scale.bitmap.min.zh-HK", 16);
|
||||
pref("font.scale.bitmap.undersize.zh-HK", 80);
|
||||
pref("font.scale.bitmap.oversize.zh-HK", 120);
|
||||
|
||||
// minimum font sizes
|
||||
|
||||
pref("font.min-size.variable.ja", 10);
|
||||
|
@ -308,6 +335,9 @@ pref("font.min-size.fixed.zh-CN", 10);
|
|||
pref("font.min-size.variable.zh-TW", 10);
|
||||
pref("font.min-size.fixed.zh-TW", 10);
|
||||
|
||||
pref("font.min-size.variable.zh-HK", 10);
|
||||
pref("font.min-size.fixed.zh-HK", 10);
|
||||
|
||||
// X11 specific
|
||||
/* X11 font accept/reject patterns:
|
||||
* Patterns have to match against strings like this:
|
||||
|
@ -372,6 +402,7 @@ pref("print.postscript.nativefont.x-user-def", "");
|
|||
pref("print.postscript.nativefont.x-western", "");
|
||||
pref("print.postscript.nativefont.zh-CN", "");
|
||||
pref("print.postscript.nativefont.zh-TW", "");
|
||||
pref("print.postscript.nativefont.zh-HK", "");
|
||||
|
||||
// For the download dialog
|
||||
pref("browser.download.progressDnldDialog.enable_launch_reveal_buttons", false);
|
||||
|
|
|
@ -118,6 +118,14 @@ pref("font.name-list.serif.zh-TW", "MingLiU");
|
|||
pref("font.name-list.sans-serif.zh-TW", "MingLiU");
|
||||
pref("font.name-list.monospace.zh-TW", "MingLiU");
|
||||
|
||||
// hkscsm3u.ttf (HKSCS-2001) : http://www.microsoft.com/hk/hkscs
|
||||
pref("font.name.serif.zh-HK", "細明體_HKSCS");
|
||||
pref("font.name.sans-serif.zh-HK", "細明體_HKSCS");
|
||||
pref("font.name.monospace.zh-HK", "細明體_HKSCS");
|
||||
pref("font.name-list.serif.zh-HK", "MingLiu_HKSCS, Ming(for ISO10646), MingLiU");
|
||||
pref("font.name-list.sans-serif.zh-HK", "MingLiU_HKSCS, Ming(for ISO10646), MingLiU");
|
||||
pref("font.name-list.monospace.zh-HK", "MingLiU_HKSCS, Ming(for ISO10646), MingLiU");
|
||||
|
||||
pref("font.name.serif.x-devanagari", "Mangal");
|
||||
pref("font.name.sans-serif.x-devanagari", "Raghindi");
|
||||
pref("font.name.monospace.x-devanagari", "Mangal");
|
||||
|
@ -179,6 +187,9 @@ pref("font.size.fixed.zh-CN", 16);
|
|||
pref("font.size.variable.zh-TW", 16);
|
||||
pref("font.size.fixed.zh-TW", 16);
|
||||
|
||||
pref("font.size.variable.zh-HK", 16);
|
||||
pref("font.size.fixed.zh-HK", 16);
|
||||
|
||||
pref("font.size.nav4rounding", false);
|
||||
|
||||
pref("system.windows.lock_ui.default_mail_client", false);
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
<menuitem value="ja" label="&font.langGroup.japanese;"/>
|
||||
<menuitem value="zh-TW" label="&font.langGroup.trad-chinese;"/>
|
||||
<menuitem value="zh-CN" label="&font.langGroup.simpl-chinese;"/>
|
||||
<menuitem value="zh-HK" label="&font.langGroup.trad-chinese-hk;"/>
|
||||
<menuitem value="ko" label="&font.langGroup.korean;"/>
|
||||
<menuitem value="x-cyrillic" label="&font.langGroup.cyrillic;"/>
|
||||
<menuitem value="x-baltic" label="&font.langGroup.baltic;"/>
|
||||
|
|
|
@ -29,8 +29,9 @@
|
|||
<!ENTITY font.langGroup.latin1 "Western">
|
||||
<!ENTITY font.langGroup.latin2 "Central European">
|
||||
<!ENTITY font.langGroup.japanese "Japanese">
|
||||
<!ENTITY font.langGroup.trad-chinese "Traditional Chinese">
|
||||
<!ENTITY font.langGroup.trad-chinese "Traditional Chinese(Taiwan)">
|
||||
<!ENTITY font.langGroup.simpl-chinese "Simplified Chinese">
|
||||
<!ENTITY font.langGroup.trad-chinese-hk "Traditional Chinese(Hong Kong)">
|
||||
<!ENTITY font.langGroup.korean "Korean">
|
||||
<!ENTITY font.langGroup.cyrillic "Cyrillic">
|
||||
<!ENTITY font.langGroup.baltic "Baltic">
|
||||
|
|
Загрузка…
Ссылка в новой задаче