Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
SkShaper_harfbuzz.h
Go to the documentation of this file.
1/*
2 * Copyright 2024 Google LLC
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef SkShaper_harfbuzz_DEFINED
9#define SkShaper_harfbuzz_DEFINED
10
14
15#include <cstddef>
16#include <memory>
17
18class SkFontMgr;
19class SkUnicode;
20
21namespace SkShapers::HB {
22SKSHAPER_API std::unique_ptr<SkShaper> ShaperDrivenWrapper(sk_sp<SkUnicode> unicode,
23 sk_sp<SkFontMgr> fallback);
24SKSHAPER_API std::unique_ptr<SkShaper> ShapeThenWrap(sk_sp<SkUnicode> unicode,
25 sk_sp<SkFontMgr> fallback);
26SKSHAPER_API std::unique_ptr<SkShaper> ShapeDontWrapOrReorder(sk_sp<SkUnicode> unicode,
27 sk_sp<SkFontMgr> fallback);
28
29SKSHAPER_API std::unique_ptr<SkShaper::ScriptRunIterator> ScriptRunIterator(const char* utf8,
30 size_t utf8Bytes);
31SKSHAPER_API std::unique_ptr<SkShaper::ScriptRunIterator> ScriptRunIterator(const char* utf8,
32 size_t utf8Bytes,
33 SkFourByteTag script);
34
36} // namespace SkShapers::HB
37
38#endif
#define SKSHAPER_API
Definition SkShaper.h:43
uint32_t SkFourByteTag
Definition SkTypes.h:166
SKSHAPER_API std::unique_ptr< SkShaper > ShapeDontWrapOrReorder(sk_sp< SkUnicode > unicode, sk_sp< SkFontMgr > fallback)
SKSHAPER_API std::unique_ptr< SkShaper > ShapeThenWrap(sk_sp< SkUnicode > unicode, sk_sp< SkFontMgr > fallback)
SKSHAPER_API std::unique_ptr< SkShaper > ShaperDrivenWrapper(sk_sp< SkUnicode > unicode, sk_sp< SkFontMgr > fallback)
SKSHAPER_API void PurgeCaches()
SKSHAPER_API std::unique_ptr< SkShaper::ScriptRunIterator > ScriptRunIterator(const char *utf8, size_t utf8Bytes)