diff options
author | ananta <ananta@chromium.org> | 2015-01-13 17:34:46 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-01-14 01:36:22 +0000 |
commit | 3e05f41653bf36cce40718d8295ce2293218dab6 (patch) | |
tree | f933e6ce8d808a17ef2bcf667423494ade901928 /ui/gfx/platform_font_win.h | |
parent | 4ea5f83c5ab828afc143bf97f964b208cbbb5cc4 (diff) | |
download | chromium_src-3e05f41653bf36cce40718d8295ce2293218dab6.zip chromium_src-3e05f41653bf36cce40718d8295ce2293218dab6.tar.gz chromium_src-3e05f41653bf36cce40718d8295ce2293218dab6.tar.bz2 |
Relanding this with font test fixes for gdi.
Get all font unittests running with DirectWrite on Windows 7+
Fixes as per below:-
1. Remove the addition of the fLeading value when calculating the height for the font
with DirectWrite. fAscent + fDescent is the height of the font and adding the fLeading
value to it returns the spacing between lines which is not what we are looking for.
2. The FontListTest.Fonts_GetHeight_GetBaseline unittest has a condition which basically validates
whether the difference between the font height and the baseline is different for Arial and Symbol
fonts. This fails for DirectWrite and fails for GDI with font sizes like 50, etc. Replaced this check
with a check for the font heights are different.
3. Reworked the PlatformFontWinTest.DeriveFontWithHeight test to ensure it passes for DirectWrite and GDI.
4. Ensure that the PlatformFontWin::DeriveFontWithHeight function honors the minimum font size constraint
in all cases.
BUG=442010
R=msw
Review URL: https://codereview.chromium.org/853553002
Cr-Commit-Position: refs/heads/master@{#311388}
Diffstat (limited to 'ui/gfx/platform_font_win.h')
-rw-r--r-- | ui/gfx/platform_font_win.h | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/ui/gfx/platform_font_win.h b/ui/gfx/platform_font_win.h index 11f94d4..6f7bc21 100644 --- a/ui/gfx/platform_font_win.h +++ b/ui/gfx/platform_font_win.h @@ -49,11 +49,10 @@ class GFX_EXPORT PlatformFontWin : public PlatformFont { // name could not be retrieved, returns GetFontName(). std::string GetLocalizedFontName() const; - // Returns a derived Font with the specified |style| and with height at most - // |height|. If the height and style of the receiver already match, it is - // returned. Otherwise, the returned Font will have the largest size such that - // its height is less than or equal to |height| (since there may not exist a - // size that matches the exact |height| specified). + // Returns a derived Font with the specified |style| and maximum |height|. + // The returned Font will be the largest font size with a height <= |height|, + // since a size with the exact specified |height| may not necessarily exist. + // GetMinimumFontSize() may impose a font size that is taller than |height|. Font DeriveFontWithHeight(int height, int style); // Overridden from PlatformFont: @@ -172,10 +171,6 @@ class GFX_EXPORT PlatformFontWin : public PlatformFont { static HFontRef* CreateHFontRefFromGDI(HFONT font, const TEXTMETRIC& font_metrics); - // Returns a largest derived Font whose height does not exceed the height of - // |base_font|. - static Font DeriveWithCorrectedSize(HFONT base_font); - // Creates and returns a new HFontRef from the specified HFONT using metrics // from skia. Currently this is only used if we use DirectWrite for font // metrics. |