| Index: tools/SkShaper.h
|
| diff --git a/tools/SkShaper.h b/tools/SkShaper.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..5aa93a7dbcea508f5484af81404e5c161cd2e312
|
| --- /dev/null
|
| +++ b/tools/SkShaper.h
|
| @@ -0,0 +1,43 @@
|
| +/*
|
| + * Copyright 2016 Google Inc.
|
| + *
|
| + * Use of this source code is governed by a BSD-style license that can be
|
| + * found in the LICENSE file.
|
| + */
|
| +
|
| +#ifndef SkShaper_DEFINED
|
| +#define SkShaper_DEFINED
|
| +
|
| +#include <memory>
|
| +
|
| +#include "SkPoint.h"
|
| +#include "SkTypeface.h"
|
| +
|
| +class SkPaint;
|
| +class SkTextBlobBuilder;
|
| +
|
| +/**
|
| + Shapes text using harfbuzz and places the shaped text into a
|
| + TextBlob.
|
| + */
|
| +class SkShaper {
|
| +public:
|
| + SkShaper(sk_sp<SkTypeface> face);
|
| + ~SkShaper();
|
| +
|
| + bool good() const;
|
| + SkScalar shape(SkTextBlobBuilder* dest,
|
| + const SkPaint& srcPaint,
|
| + const char* utf8text,
|
| + size_t textBytes,
|
| + SkPoint point) const;
|
| +
|
| +private:
|
| + SkShaper(const SkShaper&) = delete;
|
| + SkShaper& operator=(const SkShaper&) = delete;
|
| +
|
| + struct Impl;
|
| + std::unique_ptr<Impl> fImpl;
|
| +};
|
| +
|
| +#endif // SkShaper_DEFINED
|
|
|