| Index: third_party/WebKit/Source/platform/fonts/SimpleFontData.h
|
| diff --git a/third_party/WebKit/Source/platform/fonts/SimpleFontData.h b/third_party/WebKit/Source/platform/fonts/SimpleFontData.h
|
| index 03a087c1cb1609b24553f7fed44f2d9c3ba68c6b..4342cf3fa93458013740143b09dd10774243455f 100644
|
| --- a/third_party/WebKit/Source/platform/fonts/SimpleFontData.h
|
| +++ b/third_party/WebKit/Source/platform/fonts/SimpleFontData.h
|
| @@ -48,14 +48,17 @@ enum FontDataVariant { AutoVariant, NormalVariant, SmallCapsVariant, EmphasisMar
|
| class PLATFORM_EXPORT SimpleFontData : public FontData {
|
| public:
|
| // Used to create platform fonts.
|
| - static PassRefPtr<SimpleFontData> create(const FontPlatformData& platformData, PassRefPtr<CustomFontData> customData = nullptr, bool isTextOrientationFallback = false)
|
| + static PassRefPtr<SimpleFontData> create(const FontPlatformData& platformData, float fontSize, PassRefPtr<CustomFontData> customData = nullptr, bool isTextOrientationFallback = false)
|
| {
|
| - return adoptRef(new SimpleFontData(platformData, customData, isTextOrientationFallback));
|
| + return adoptRef(new SimpleFontData(platformData, fontSize, customData, isTextOrientationFallback));
|
| }
|
|
|
| ~SimpleFontData() override;
|
|
|
| const FontPlatformData& platformData() const { return m_platformData; }
|
| + float size() const { return m_fontSize; }
|
| + const FontRenderStyle& style() const { return m_style; }
|
| +
|
| const OpenTypeVerticalData* verticalData() const { return m_verticalData.get(); }
|
|
|
| PassRefPtr<SimpleFontData> smallCapsFontData(const FontDescription&) const;
|
| @@ -85,8 +88,8 @@ public:
|
|
|
| FontMetrics& getFontMetrics() { return m_fontMetrics; }
|
| const FontMetrics& getFontMetrics() const { return m_fontMetrics; }
|
| - float sizePerUnit() const { return platformData().size() / (getFontMetrics().unitsPerEm() ? getFontMetrics().unitsPerEm() : 1); }
|
| - float internalLeading() const { return getFontMetrics().floatHeight() - platformData().size(); }
|
| + float sizePerUnit() const { return m_fontSize / (getFontMetrics().unitsPerEm() ? getFontMetrics().unitsPerEm() : 1); }
|
| + float internalLeading() const { return getFontMetrics().floatHeight() - m_fontSize; }
|
|
|
| float maxCharWidth() const { return m_maxCharWidth; }
|
| void setMaxCharWidth(float maxCharWidth) { m_maxCharWidth = maxCharWidth; }
|
| @@ -128,7 +131,7 @@ public:
|
| virtual bool fillGlyphPage(GlyphPage* pageToFill, unsigned offset, unsigned length, UChar* buffer, unsigned bufferLength) const;
|
|
|
| protected:
|
| - SimpleFontData(const FontPlatformData&, PassRefPtr<CustomFontData> customData, bool isTextOrientationFallback = false);
|
| + SimpleFontData(const FontPlatformData&, float fontSize, PassRefPtr<CustomFontData> customData, bool isTextOrientationFallback = false);
|
|
|
| SimpleFontData(PassRefPtr<CustomFontData> customData, float fontSize, bool syntheticBold, bool syntheticItalic);
|
|
|
| @@ -144,6 +147,8 @@ private:
|
| float m_avgCharWidth;
|
|
|
| FontPlatformData m_platformData;
|
| + float m_fontSize;
|
| + FontRenderStyle m_style;
|
|
|
| mutable OwnPtr<GlyphMetricsMap<FloatRect>> m_glyphToBoundsMap;
|
| mutable GlyphMetricsMap<float> m_glyphToWidthMap;
|
|
|