Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Side by Side Diff: third_party/WebKit/Source/platform/fonts/FontDescription.h

Issue 1740593002: Use Skia's matchFamilyStyleCharacter API for font fallback (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merge Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv ed. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv ed.
6 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> 6 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com>
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version. 11 * version 2 of the License, or (at your option) any later version.
12 * 12 *
13 * This library is distributed in the hope that it will be useful, 13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Library General Public License for more details. 16 * Library General Public License for more details.
17 * 17 *
18 * You should have received a copy of the GNU Library General Public License 18 * You should have received a copy of the GNU Library General Public License
19 * along with this library; see the file COPYING.LIother.m_ If not, write to 19 * along with this library; see the file COPYING.LIother.m_ If not, write to
20 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 20 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301, USA. 21 * Boston, MA 02110-1301, USA.
22 * 22 *
23 */ 23 */
24 24
25 #ifndef FontDescription_h 25 #ifndef FontDescription_h
26 #define FontDescription_h 26 #define FontDescription_h
27 27
28 #include "SkFontStyle.h"
28 #include "platform/FontFamilyNames.h" 29 #include "platform/FontFamilyNames.h"
29 #include "platform/fonts/FontCacheKey.h" 30 #include "platform/fonts/FontCacheKey.h"
30 #include "platform/fonts/FontFamily.h" 31 #include "platform/fonts/FontFamily.h"
31 #include "platform/fonts/FontFeatureSettings.h" 32 #include "platform/fonts/FontFeatureSettings.h"
32 #include "platform/fonts/FontOrientation.h" 33 #include "platform/fonts/FontOrientation.h"
33 #include "platform/fonts/FontSmoothingMode.h" 34 #include "platform/fonts/FontSmoothingMode.h"
34 #include "platform/fonts/FontTraits.h" 35 #include "platform/fonts/FontTraits.h"
35 #include "platform/fonts/FontWidthVariant.h" 36 #include "platform/fonts/FontWidthVariant.h"
36 #include "platform/fonts/TextRenderingMode.h" 37 #include "platform/fonts/TextRenderingMode.h"
37 #include "platform/fonts/TypesettingFeatures.h" 38 #include "platform/fonts/TypesettingFeatures.h"
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 static void setSubpixelPositioning(bool b) { s_useSubpixelTextPositioning = b; } 225 static void setSubpixelPositioning(bool b) { s_useSubpixelTextPositioning = b; }
225 static bool subpixelPositioning() { return s_useSubpixelTextPositioning; } 226 static bool subpixelPositioning() { return s_useSubpixelTextPositioning; }
226 227
227 static void setDefaultTypesettingFeatures(TypesettingFeatures); 228 static void setDefaultTypesettingFeatures(TypesettingFeatures);
228 static TypesettingFeatures defaultTypesettingFeatures(); 229 static TypesettingFeatures defaultTypesettingFeatures();
229 230
230 unsigned styleHashWithoutFamilyList() const; 231 unsigned styleHashWithoutFamilyList() const;
231 unsigned bitmapFields() const { return m_fieldsAsUnsigned[0]; } 232 unsigned bitmapFields() const { return m_fieldsAsUnsigned[0]; }
232 unsigned auxiliaryBitmapFields() const { return m_fieldsAsUnsigned[1]; } 233 unsigned auxiliaryBitmapFields() const { return m_fieldsAsUnsigned[1]; }
233 234
235 SkFontStyle skiaFontStyle() const;
236
234 private: 237 private:
235 FontFamily m_familyList; // The list of font families to be used. 238 FontFamily m_familyList; // The list of font families to be used.
236 RefPtr<FontFeatureSettings> m_featureSettings; 239 RefPtr<FontFeatureSettings> m_featureSettings;
237 AtomicString m_locale; 240 AtomicString m_locale;
238 241
239 void updateTypesettingFeatures(); 242 void updateTypesettingFeatures();
240 243
241 float m_specifiedSize; // Specified CSS value. Independent of rendering is sues such as integer 244 float m_specifiedSize; // Specified CSS value. Independent of rendering is sues such as integer
242 // rounding, minimum font sizes, and zooming. 245 // rounding, minimum font sizes, and zooming.
243 float m_computedSize; // Computed size adjusted for the minimum font size and the zoom factor. 246 float m_computedSize; // Computed size adjusted for the minimum font size and the zoom factor.
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 && m_letterSpacing == other.m_letterSpacing 310 && m_letterSpacing == other.m_letterSpacing
308 && m_wordSpacing == other.m_wordSpacing 311 && m_wordSpacing == other.m_wordSpacing
309 && m_fieldsAsUnsigned[0] == other.m_fieldsAsUnsigned[0] 312 && m_fieldsAsUnsigned[0] == other.m_fieldsAsUnsigned[0]
310 && m_fieldsAsUnsigned[1] == other.m_fieldsAsUnsigned[1] 313 && m_fieldsAsUnsigned[1] == other.m_fieldsAsUnsigned[1]
311 && m_featureSettings == other.m_featureSettings; 314 && m_featureSettings == other.m_featureSettings;
312 } 315 }
313 316
314 } // namespace blink 317 } // namespace blink
315 318
316 #endif 319 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/platform/fonts/FontCache.cpp ('k') | third_party/WebKit/Source/platform/fonts/FontDescription.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698