OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 UI_GFX_RENDER_TEXT_HARFBUZZ_H_ | 5 #ifndef UI_GFX_RENDER_TEXT_HARFBUZZ_H_ |
6 #define UI_GFX_RENDER_TEXT_HARFBUZZ_H_ | 6 #define UI_GFX_RENDER_TEXT_HARFBUZZ_H_ |
7 | 7 |
| 8 #include <stddef.h> |
| 9 #include <stdint.h> |
| 10 |
8 #include "base/gtest_prod_util.h" | 11 #include "base/gtest_prod_util.h" |
| 12 #include "base/macros.h" |
9 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
10 #include "base/memory/scoped_vector.h" | 14 #include "base/memory/scoped_vector.h" |
11 #include "third_party/harfbuzz-ng/src/hb.h" | 15 #include "third_party/harfbuzz-ng/src/hb.h" |
12 #include "third_party/icu/source/common/unicode/ubidi.h" | 16 #include "third_party/icu/source/common/unicode/ubidi.h" |
13 #include "third_party/icu/source/common/unicode/uscript.h" | 17 #include "third_party/icu/source/common/unicode/uscript.h" |
14 #include "ui/gfx/render_text.h" | 18 #include "ui/gfx/render_text.h" |
15 | 19 |
16 namespace base { | 20 namespace base { |
17 namespace i18n { | 21 namespace i18n { |
18 class BreakIterator; | 22 class BreakIterator; |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 // text-space (0 corresponds to |GetDisplayText()[0]|). | 60 // text-space (0 corresponds to |GetDisplayText()[0]|). |
57 SkScalar GetGlyphWidthForCharRange(const Range& char_range) const; | 61 SkScalar GetGlyphWidthForCharRange(const Range& char_range) const; |
58 | 62 |
59 float width; | 63 float width; |
60 float preceding_run_widths; | 64 float preceding_run_widths; |
61 Range range; | 65 Range range; |
62 bool is_rtl; | 66 bool is_rtl; |
63 UBiDiLevel level; | 67 UBiDiLevel level; |
64 UScriptCode script; | 68 UScriptCode script; |
65 | 69 |
66 scoped_ptr<uint16[]> glyphs; | 70 scoped_ptr<uint16_t[]> glyphs; |
67 scoped_ptr<SkPoint[]> positions; | 71 scoped_ptr<SkPoint[]> positions; |
68 std::vector<uint32> glyph_to_char; | 72 std::vector<uint32_t> glyph_to_char; |
69 size_t glyph_count; | 73 size_t glyph_count; |
70 | 74 |
71 Font font; | 75 Font font; |
72 skia::RefPtr<SkTypeface> skia_face; | 76 skia::RefPtr<SkTypeface> skia_face; |
73 FontRenderParams render_params; | 77 FontRenderParams render_params; |
74 int font_size; | 78 int font_size; |
75 int baseline_offset; | 79 int baseline_offset; |
76 int baseline_type; | 80 int baseline_type; |
77 int font_style; | 81 int font_style; |
78 bool strike; | 82 bool strike; |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
269 | 273 |
270 // Fixed width of glyphs. This should only be set in test environments. | 274 // Fixed width of glyphs. This should only be set in test environments. |
271 float glyph_width_for_test_; | 275 float glyph_width_for_test_; |
272 | 276 |
273 DISALLOW_COPY_AND_ASSIGN(RenderTextHarfBuzz); | 277 DISALLOW_COPY_AND_ASSIGN(RenderTextHarfBuzz); |
274 }; | 278 }; |
275 | 279 |
276 } // namespace gfx | 280 } // namespace gfx |
277 | 281 |
278 #endif // UI_GFX_RENDER_TEXT_HARFBUZZ_H_ | 282 #endif // UI_GFX_RENDER_TEXT_HARFBUZZ_H_ |
OLD | NEW |