| Index: core/fxge/include/fx_font.h
|
| diff --git a/core/fxge/include/fx_font.h b/core/fxge/include/fx_font.h
|
| index e6ffc6be4b5ca2cb389898a75afd257f8d415e98..28c51b131cca7ce81da933b51b3df035f1a62c9f 100644
|
| --- a/core/fxge/include/fx_font.h
|
| +++ b/core/fxge/include/fx_font.h
|
| @@ -74,6 +74,17 @@ using CFX_TypeFace = SkTypeface;
|
| #define GET_TT_LONG(w) \
|
| (uint32_t)(((w)[0] << 24) | ((w)[1] << 16) | ((w)[2] << 8) | (w)[3])
|
|
|
| +// Sets the given transform on the font, and resets it to the identity when it
|
| +// goes out of scope.
|
| +class ScopedFontTransform {
|
| + public:
|
| + ScopedFontTransform(FT_Face face, FXFT_Matrix* matrix);
|
| + ~ScopedFontTransform();
|
| +
|
| + private:
|
| + FT_Face m_Face;
|
| +};
|
| +
|
| class CFX_Font {
|
| public:
|
| CFX_Font();
|
| @@ -132,6 +143,13 @@ class CFX_Font {
|
| uint32_t GetSize() const { return m_dwSize; }
|
| void AdjustMMParams(int glyph_index, int width, int weight);
|
|
|
| + static const size_t kAngleSkewArraySize = 30;
|
| + static const char s_AngleSkew[kAngleSkewArraySize];
|
| + static const size_t kWeightPowArraySize = 100;
|
| + static const uint8_t s_WeightPow[kWeightPowArraySize];
|
| + static const uint8_t s_WeightPow_11[kWeightPowArraySize];
|
| + static const uint8_t s_WeightPow_SHIFTJIS[kWeightPowArraySize];
|
| +
|
| #ifdef PDF_ENABLE_XFA
|
| protected:
|
| CFX_BinaryBuf m_OtfFontData;
|
| @@ -243,56 +261,6 @@ class CFX_GlyphBitmap {
|
| CFX_DIBitmap m_Bitmap;
|
| };
|
|
|
| -class CFX_FaceCache {
|
| - public:
|
| - explicit CFX_FaceCache(FXFT_Face face);
|
| - ~CFX_FaceCache();
|
| - const CFX_GlyphBitmap* LoadGlyphBitmap(CFX_Font* pFont,
|
| - uint32_t glyph_index,
|
| - FX_BOOL bFontStyle,
|
| - const CFX_Matrix* pMatrix,
|
| - int dest_width,
|
| - int anti_alias,
|
| - int& text_flags);
|
| - const CFX_PathData* LoadGlyphPath(CFX_Font* pFont,
|
| - uint32_t glyph_index,
|
| - int dest_width);
|
| -
|
| -#ifdef _SKIA_SUPPORT_
|
| - CFX_TypeFace* GetDeviceCache(CFX_Font* pFont);
|
| -#endif
|
| -
|
| - private:
|
| - CFX_GlyphBitmap* RenderGlyph(CFX_Font* pFont,
|
| - uint32_t glyph_index,
|
| - FX_BOOL bFontStyle,
|
| - const CFX_Matrix* pMatrix,
|
| - int dest_width,
|
| - int anti_alias);
|
| - CFX_GlyphBitmap* RenderGlyph_Nativetext(CFX_Font* pFont,
|
| - uint32_t glyph_index,
|
| - const CFX_Matrix* pMatrix,
|
| - int dest_width,
|
| - int anti_alias);
|
| - CFX_GlyphBitmap* LookUpGlyphBitmap(CFX_Font* pFont,
|
| - const CFX_Matrix* pMatrix,
|
| - const CFX_ByteString& FaceGlyphsKey,
|
| - uint32_t glyph_index,
|
| - FX_BOOL bFontStyle,
|
| - int dest_width,
|
| - int anti_alias);
|
| - void InitPlatform();
|
| - void DestroyPlatform();
|
| -
|
| - FXFT_Face const m_Face;
|
| - std::map<CFX_ByteString, CFX_SizeGlyphCache*> m_SizeMap;
|
| - std::map<uint32_t, CFX_PathData*> m_PathMap;
|
| - CFX_DIBitmap* m_pBitmap;
|
| -#ifdef _SKIA_SUPPORT_
|
| - CFX_TypeFace* m_pTypeface;
|
| -#endif
|
| -};
|
| -
|
| struct FXTEXT_GLYPHPOS {
|
| const CFX_GlyphBitmap* m_pGlyph;
|
| int m_OriginX;
|
|
|