diff options
author | Ben Wagner <bungeman@google.com> | 2018-06-26 11:22:37 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-07-12 17:30:20 +0000 |
commit | e346b1eea442065261c14f92b304031e1330e491 (patch) | |
tree | ac71ca13242dad662d3bf157370c943596ce4dd0 /include/core/SkFontParameters.h | |
parent | a4704078b9d7f6c86cdd29c80840bfc4f15bea1a (diff) |
Add SkTypeface::getVariationDesignParameters
This adds a way for users to query the axis parameters for a typeface.
Change-Id: Idc2ac0d84bc7ae2ca484ae410cba5b01883418e5
Reviewed-on: https://skia-review.googlesource.com/137706
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Diffstat (limited to 'include/core/SkFontParameters.h')
-rw-r--r-- | include/core/SkFontParameters.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/include/core/SkFontParameters.h b/include/core/SkFontParameters.h new file mode 100644 index 0000000000..7d3c407add --- /dev/null +++ b/include/core/SkFontParameters.h @@ -0,0 +1,38 @@ +/* + * Copyright 2018 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef SkFontParameters_DEFINED +#define SkFontParameters_DEFINED + +#include "SkScalar.h" +#include "SkTypes.h" + +struct SkFontParameters { + struct Variation { + // Parameters in a variation font axis. + struct Axis { + // Four character identifier of the font axis (weight, width, slant, italic...). + SkFourByteTag tag; + // Minimum value supported by this axis. + float min; + // Default value set by this axis. + float def; + // Maximum value supported by this axis. The maximum can equal the minimum. + float max; + // Return whether this axis is recommended to be remain hidden in user interfaces. + bool isHidden() const { return flags & HIDDEN; } + // Set this axis to be remain hidden in user interfaces. + void setHidden(bool hidden) { flags = hidden ? (flags | HIDDEN) : (flags & ~HIDDEN); } + private: + static constexpr uint16_t HIDDEN = 0x0001; + // Attributes for a font axis. + uint16_t flags; + }; + }; +}; + +#endif |