webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
FontCustomPlatformData.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2008 Alp Toker <alp@atoker.com>
3  * Copyright (C) 2010 Igalia S.L.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public License
16  * along with this library; see the file COPYING.LIB. If not, write to
17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  * Boston, MA 02110-1301, USA.
19  *
20  */
21 
22 #ifndef FontCustomPlatformData_h
23 #define FontCustomPlatformData_h
24 
25 #if USE(CAIRO)
26 
27 #include "TextFlags.h"
28 #include <wtf/Forward.h>
29 #include <wtf/Noncopyable.h>
30 
31 typedef struct FT_FaceRec_* FT_Face;
32 typedef struct _cairo_font_face cairo_font_face_t;
33 
34 namespace WebCore {
35 
36 class FontDescription;
37 class FontPlatformData;
38 class SharedBuffer;
39 
40 struct FontCustomPlatformData {
42 public:
43  FontCustomPlatformData(FT_Face, SharedBuffer&);
45  FontPlatformData fontPlatformData(const FontDescription&, bool bold, bool italic);
46  static bool supportsFormat(const String&);
47 
48 private:
49  cairo_font_face_t* m_fontFace;
50 };
51 
52 std::unique_ptr<FontCustomPlatformData> createFontCustomPlatformData(SharedBuffer&);
53 
54 } // namespace WebCore
55 
56 #endif // USE(CAIRO)
57 
58 #endif // FontCustomPlatformData_h
WTF_MAKE_NONCOPYABLE(FontCustomPlatformData)
~FontCustomPlatformData()
Definition: FontCustomPlatformDataFreeType.cpp:71
FontCustomPlatformData(CTFontDescriptorRef fontDescriptor)
Definition: FontCustomPlatformData.h:45
std::unique_ptr< FontCustomPlatformData > createFontCustomPlatformData(SharedBuffer &buffer)
Definition: FontCustomPlatformDataFreeType.cpp:81
static bool supportsFormat(const String &)
Definition: FontCustomPlatformDataFreeType.cpp:95
FontPlatformData fontPlatformData(const FontDescription &, bool bold, bool italic, const FontFeatureSettings &fontFaceFeatures, const FontVariantSettings &fontFaceVariantSettings)
Definition: FontCustomPlatformData.cpp:37
This file is generated by create-http-header-name-table, do not edit.
Definition: CharsetData.cpp:6