--- a/fontservices/fontstore/tfs/T_FontMetrics.cpp Wed Aug 18 11:34:25 2010 +0300
+++ b/fontservices/fontstore/tfs/T_FontMetrics.cpp Thu Sep 02 22:23:14 2010 +0300
@@ -300,26 +300,33 @@
*/
void CTFontMetrics::GetNearestFontToDesignHeightInPixels()
{
+ INFO_PRINTF3(_L("iKPixelWidthInTwips = %d; iKPixelHeightInTwips = %d"),
+ iFontStore->iKPixelWidthInTwips, iFontStore->iKPixelHeightInTwips);
+
TOpenFontSpec openFontSpec = GetTOpenFontSpec();
+ INFO_PRINTF1(_L("GetNearestFontToDesignHeightInPixels().ELangNone"));
CFont* font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangNone);
iFontStore->GetNearestFontToDesignHeightInPixels(font, openFontSpec);
Verify_GetNearestFontToDesignHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToDesignHeightInPixels().ELangFinnish"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangFinnish);
iFontStore->GetNearestFontToDesignHeightInPixels(font, openFontSpec);
Verify_GetNearestFontToDesignHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToDesignHeightInPixels().ELangGreek"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangGreek);
iFontStore->GetNearestFontToDesignHeightInPixels(font, openFontSpec);
Verify_GetNearestFontToDesignHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToDesignHeightInPixels().ELangRussian"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangRussian);
iFontStore->GetNearestFontToDesignHeightInPixels(font, openFontSpec);
@@ -330,6 +337,12 @@
void CTFontMetrics::Verify_GetNearestFontToDesignHeightInPixels(const CFont& aFont, TInt aScript)
{
VerifyTypefaceNameAndID(aFont);
+ INFO_PRINTF4(_L("HeightInPixels() = %d; AscentInPixels() = %d; DescentInPixels() = %d"),
+ aFont.HeightInPixels(), aFont.AscentInPixels(), aFont.DescentInPixels());
+ INFO_PRINTF4(_L("FontCapitalAscent() = %d; FontStandardDescent() = %d; FontMaxAscent() = %d"),
+ aFont.FontCapitalAscent(), aFont.FontStandardDescent(), aFont.FontMaxAscent());
+ INFO_PRINTF4(_L("FontMaxDescent() = %d; FontMaxHeight() = %d; FontLineGap() = %d"),
+ aFont.FontMaxDescent(), aFont.FontMaxHeight(), aFont.FontLineGap());
// Old metrics
TEST(KRequiredHeight == aFont.HeightInPixels());
TEST(19 == aFont.AscentInPixels());
@@ -337,30 +350,15 @@
// New metrics
TEST(18 == aFont.FontCapitalAscent());
TEST(5 == aFont.FontStandardDescent());
- if (GlyphSample::EScriptNone == aScript)
+ if (GlyphSample::EScriptNone == aScript ||
+ GlyphSample::EScriptLatin == aScript ||
+ GlyphSample::EScriptGreek == aScript ||
+ GlyphSample::EScriptCyrillic == aScript)
{
TEST(28 == aFont.FontMaxAscent());
TEST(8 == aFont.FontMaxDescent());
TEST(42 == aFont.FontLineGap());
}
- else if (GlyphSample::EScriptLatin == aScript)
- {
- TEST(24 == aFont.FontMaxAscent());
- TEST(5 == aFont.FontMaxDescent());
- TEST(35 == aFont.FontLineGap());
- }
- else if (GlyphSample::EScriptGreek == aScript)
- {
- TEST(22 == aFont.FontMaxAscent());
- TEST(5 == aFont.FontMaxDescent());
- TEST(33 == aFont.FontLineGap());
- }
- else if (GlyphSample::EScriptCyrillic == aScript)
- {
- TEST(23 == aFont.FontMaxAscent());
- TEST(5 == aFont.FontMaxDescent());
- TEST(34 == aFont.FontLineGap());
- }
else TEST(1 == 0);
TEST(aFont.FontMaxAscent() + aFont.FontMaxDescent() == aFont.FontMaxHeight());
INFO_PRINTF2(_L("MaxCharWidthInPixels() returns %d"), aFont.MaxCharWidthInPixels());
@@ -393,24 +391,28 @@
{
TOpenFontSpec openFontSpec = GetTOpenFontSpec();
+ INFO_PRINTF1(_L("GetNearestFontToMaxHeightInPixels().ELangNone"));
CFont* font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangNone);
iFontStore->GetNearestFontToMaxHeightInPixels(font, openFontSpec, KRequiredHeight);
Verify_GetNearestFontToMaxHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToMaxHeightInPixels().ELangFinnish"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangFinnish);
iFontStore->GetNearestFontToMaxHeightInPixels(font, openFontSpec, KRequiredHeight);
Verify_GetNearestFontToMaxHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToMaxHeightInPixels().ELangGreek"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangGreek);
iFontStore->GetNearestFontToMaxHeightInPixels(font, openFontSpec, KRequiredHeight);
Verify_GetNearestFontToMaxHeightInPixels(*font, openFontSpec.ScriptTypeForMetrics());
iFontStore->ReleaseFont(font);
+ INFO_PRINTF1(_L("GetNearestFontToMaxHeightInPixels().ELangRussian"));
font = NULL;
openFontSpec.SetScriptTypeForMetrics(ELangRussian);
iFontStore->GetNearestFontToMaxHeightInPixels(font, openFontSpec, KRequiredHeight);
@@ -421,62 +423,42 @@
void CTFontMetrics::Verify_GetNearestFontToMaxHeightInPixels(const CFont& aFont, TInt aScript)
{
VerifyTypefaceNameAndID(aFont);
+ INFO_PRINTF4(_L("HeightInPixels() = %d; AscentInPixels() = %d; DescentInPixels() = %d"),
+ aFont.HeightInPixels(), aFont.AscentInPixels(), aFont.DescentInPixels());
+ INFO_PRINTF4(_L("FontCapitalAscent() = %d; FontStandardDescent() = %d; FontMaxAscent() = %d"),
+ aFont.FontCapitalAscent(), aFont.FontStandardDescent(), aFont.FontMaxAscent());
+ INFO_PRINTF4(_L("FontMaxDescent() = %d; FontMaxHeight() = %d; FontLineGap() = %d"),
+ aFont.FontMaxDescent(), aFont.FontMaxHeight(), aFont.FontLineGap());
if (GlyphSample::EScriptNone == aScript)
{
// Old metrics
- TEST(15 == aFont.HeightInPixels());
- TEST(12 == aFont.AscentInPixels());
- TEST(15 - 12 == aFont.DescentInPixels());
- // New metrics
- TEST(11 == aFont.FontCapitalAscent());
- TEST(3 == aFont.FontStandardDescent());
- TEST(18 == aFont.FontMaxAscent());
- TEST(5 == aFont.FontMaxDescent());
- TEST(KRequiredHeight - 1 == aFont.FontMaxHeight());
- TEST(29 == aFont.FontLineGap());
- }
- else if (GlyphSample::EScriptLatin == aScript)
- {
- // Old metrics
- TEST(20 == aFont.HeightInPixels());
- TEST(16 == aFont.AscentInPixels());
- TEST(20 - 16 == aFont.DescentInPixels());
- // New metrics
- TEST(15 == aFont.FontCapitalAscent());
- TEST(4 == aFont.FontStandardDescent());
- TEST(20 == aFont.FontMaxAscent());
- TEST(4 == aFont.FontMaxDescent());
- TEST(KRequiredHeight == aFont.FontMaxHeight());
- TEST(30 == aFont.FontLineGap());
+ TEST(16 == aFont.HeightInPixels());
+ TEST(13 == aFont.AscentInPixels());
+ TEST(16 - 13 == aFont.DescentInPixels());
+ // New metrics
+ TEST(12 == aFont.FontCapitalAscent());
+ TEST(3 == aFont.FontStandardDescent());
+ TEST(19 == aFont.FontMaxAscent());
+ TEST(6 == aFont.FontMaxDescent());
+ TEST(KRequiredHeight + 1 == aFont.FontMaxHeight());
+ TEST(31 == aFont.FontLineGap());
}
- else if (GlyphSample::EScriptGreek == aScript)
- {
- // Old metrics
- TEST(20 == aFont.HeightInPixels());
- TEST(16 == aFont.AscentInPixels());
- TEST(20 - 16 == aFont.DescentInPixels());
- // New metrics
- TEST(15 == aFont.FontCapitalAscent());
- TEST(4 == aFont.FontStandardDescent());
- TEST(18 == aFont.FontMaxAscent());
- TEST(5 == aFont.FontMaxDescent());
- TEST(KRequiredHeight - 1 == aFont.FontMaxHeight());
- TEST(29 == aFont.FontLineGap());
- }
- else if (GlyphSample::EScriptCyrillic == aScript)
- {
- // Old metrics
- TEST(21 == aFont.HeightInPixels());
- TEST(16 == aFont.AscentInPixels());
- TEST(21 - 16 == aFont.DescentInPixels());
- // New metrics
- TEST(16 == aFont.FontCapitalAscent());
- TEST(4 == aFont.FontStandardDescent());
- TEST(20 == aFont.FontMaxAscent());
- TEST(4 == aFont.FontMaxDescent());
- TEST(KRequiredHeight == aFont.FontMaxHeight());
- TEST(30 == aFont.FontLineGap());
- }
+ else if (GlyphSample::EScriptLatin == aScript ||
+ GlyphSample::EScriptGreek == aScript ||
+ GlyphSample::EScriptCyrillic == aScript)
+ {
+ // Old metrics
+ TEST(24 == aFont.HeightInPixels());
+ TEST(19 == aFont.AscentInPixels());
+ TEST(24 - 19 == aFont.DescentInPixels());
+ // New metrics
+ TEST(18 == aFont.FontCapitalAscent());
+ TEST(5 == aFont.FontStandardDescent());
+ TEST(28 == aFont.FontMaxAscent());
+ TEST(8 == aFont.FontMaxDescent());
+ TEST(KRequiredHeight + 12 == aFont.FontMaxHeight());
+ TEST(42 == aFont.FontLineGap());
+ }
else TEST(1 == 0);
INFO_PRINTF2(_L("MaxCharWidthInPixels() returns %d"), aFont.MaxCharWidthInPixels());
}