OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef PPAPI_THUNK_PPB_FONT_API_H_ | 5 #ifndef PPAPI_THUNK_PPB_FONT_API_H_ |
6 #define PPAPI_THUNK_PPB_FONT_API_H_ | 6 #define PPAPI_THUNK_PPB_FONT_API_H_ |
7 | 7 |
8 #include "ppapi/c/dev/ppb_font_dev.h" | 8 #include "ppapi/c/dev/ppb_font_dev.h" |
| 9 #include "ppapi/proxy/interface_id.h" |
9 | 10 |
10 namespace ppapi { | 11 namespace ppapi { |
11 namespace thunk { | 12 namespace thunk { |
12 | 13 |
| 14 // API for static font functions. |
| 15 class PPB_Font_FunctionAPI { |
| 16 public: |
| 17 static const ::pp::proxy::InterfaceID interface_id = |
| 18 ::pp::proxy::INTERFACE_ID_PPB_FONT; |
| 19 |
| 20 virtual PP_Var GetFontFamilies(PP_Instance instance) = 0; |
| 21 }; |
| 22 |
| 23 // API for font resources. |
13 class PPB_Font_API { | 24 class PPB_Font_API { |
14 public: | 25 public: |
15 virtual PP_Bool Describe(PP_FontDescription_Dev* description, | 26 virtual PP_Bool Describe(PP_FontDescription_Dev* description, |
16 PP_FontMetrics_Dev* metrics) = 0; | 27 PP_FontMetrics_Dev* metrics) = 0; |
17 virtual PP_Bool DrawTextAt(PP_Resource image_data, | 28 virtual PP_Bool DrawTextAt(PP_Resource image_data, |
18 const PP_TextRun_Dev* text, | 29 const PP_TextRun_Dev* text, |
19 const PP_Point* position, | 30 const PP_Point* position, |
20 uint32_t color, | 31 uint32_t color, |
21 const PP_Rect* clip, | 32 const PP_Rect* clip, |
22 PP_Bool image_data_is_opaque) = 0; | 33 PP_Bool image_data_is_opaque) = 0; |
23 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; | 34 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; |
24 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, | 35 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, |
25 int32_t pixel_position) = 0; | 36 int32_t pixel_position) = 0; |
26 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, | 37 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, |
27 uint32_t char_offset) = 0; | 38 uint32_t char_offset) = 0; |
28 }; | 39 }; |
29 | 40 |
30 } // namespace thunk | 41 } // namespace thunk |
31 } // namespace ppapi | 42 } // namespace ppapi |
32 | 43 |
33 #endif // PPAPI_THUNK_PPB_FONT_API_H_ | 44 #endif // PPAPI_THUNK_PPB_FONT_API_H_ |
OLD | NEW |