aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/core/SkFont.h
diff options
context:
space:
mode:
authorGravatar robertphillips <robertphillips@google.com>2016-07-19 07:59:22 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-07-19 07:59:22 -0700
commite34f17d23699abfc672289f51319b37294b3c257 (patch)
treeeef74fb1356491c4a23c31e32ead9a275a8fa09c /include/core/SkFont.h
parentb117ff194ff888ef9107a4797aad053b0d76be30 (diff)
Make SkFont a bit more useable
Split out of https://codereview.chromium.org/2163483002/ (Use SkFont in GrStencilAndCoverTextContext) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163633002 Review-Url: https://codereview.chromium.org/2163633002
Diffstat (limited to 'include/core/SkFont.h')
-rw-r--r--include/core/SkFont.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/core/SkFont.h b/include/core/SkFont.h
index 6c231c963a..6e8a71501f 100644
--- a/include/core/SkFont.h
+++ b/include/core/SkFont.h
@@ -126,6 +126,10 @@ public:
* If size is not supported (e.g. <= 0 or non-finite) NULL will be returned.
*/
sk_sp<SkFont> makeWithSize(SkScalar size) const;
+ /**
+ * Return a font with the same attributes of this font, but with the flags.
+ */
+ sk_sp<SkFont> makeWithFlags(uint32_t newFlags) const;
SkTypeface* getTypeface() const { return fTypeface.get(); }
SkScalar getSize() const { return fSize; }
@@ -139,10 +143,15 @@ public:
bool isEnableAutoHints() const { return SkToBool(fFlags & kEnableAutoHints_Flag); }
bool isEnableByteCodeHints() const { return SkToBool(fFlags & kEnableByteCodeHints_Flag); }
bool isUseNonLinearMetrics() const { return SkToBool(fFlags & kUseNonlinearMetrics_Flag); }
+ bool isDevKern() const { return SkToBool(fFlags & kDevKern_Flag); }
int textToGlyphs(const void* text, size_t byteLength, SkTextEncoding,
uint16_t glyphs[], int maxGlyphCount) const;
+ int countText(const void* text, size_t byteLength, SkTextEncoding encoding) {
+ return this->textToGlyphs(text, byteLength, encoding, nullptr, 0);
+ }
+
SkScalar measureText(const void* text, size_t byteLength, SkTextEncoding) const;
static sk_sp<SkFont> Testing_CreateFromPaint(const SkPaint&);