aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/fonts/sk_tool_utils_font.cpp
diff options
context:
space:
mode:
authorGravatar Ben Wagner <bungeman@google.com>2018-03-27 18:15:53 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-03-27 18:16:04 +0000
commit3560b58de36988e1fba54d9ac341735ab849e913 (patch)
treebedddd24f268048bf5974914fd9ba81c8d35e018 /tools/fonts/sk_tool_utils_font.cpp
parent83ee463c315851c53f6368fcc3df0a30b0052a57 (diff)
Revert "Add color fonts."
This reverts commit d3b933f3e03d5c22e9e7c56d2110469e41509720. Reason for revert: we're not mirroring experimental/ everywhere. Original change's description: > Add color fonts. > > BUG=skia:7624 > > Change-Id: I1d0974282adce2fd7b13a003309e63593b6e1a9c > Reviewed-on: https://skia-review.googlesource.com/109521 > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> > Reviewed-by: Herb Derby <herb@google.com> > Reviewed-on: https://skia-review.googlesource.com/116541 TBR=mtklein@google.com,bungeman@google.com,herb@google.com Change-Id: Ic2d763244cbce663a23eb53321ac45201c466501 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7624 Reviewed-on: https://skia-review.googlesource.com/116680 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
Diffstat (limited to 'tools/fonts/sk_tool_utils_font.cpp')
-rw-r--r--tools/fonts/sk_tool_utils_font.cpp41
1 files changed, 30 insertions, 11 deletions
diff --git a/tools/fonts/sk_tool_utils_font.cpp b/tools/fonts/sk_tool_utils_font.cpp
index 4d5b86aa0a..d2aac851bb 100644
--- a/tools/fonts/sk_tool_utils_font.cpp
+++ b/tools/fonts/sk_tool_utils_font.cpp
@@ -11,7 +11,7 @@
#include "SkFontStyle.h"
#include "SkMutex.h"
#include "SkOSFile.h"
-#include "SkTestTypeface.h"
+#include "SkTestScalerContext.h"
#include "SkUtils.h"
#include "sk_tool_utils.h"
@@ -70,23 +70,42 @@ sk_sp<SkTypeface> create_font(const char* name, SkFontStyle style) {
}
sk_sp<SkTypeface> emoji_typeface() {
- const char* filename;
#if defined(SK_BUILD_FOR_WIN)
- filename = "fonts/colr.ttf";
-#elif defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
- filename = "fonts/sbix.ttf";
-#else
- filename = "fonts/cbdt.ttf";
-#endif
- sk_sp<SkTypeface> typeface = MakeResourceAsTypeface(filename);
+ sk_sp<SkFontMgr> fm(SkFontMgr::RefDefault());
+ const char *colorEmojiFontName = "Segoe UI Emoji";
+ sk_sp<SkTypeface> typeface(fm->matchFamilyStyle(colorEmojiFontName, SkFontStyle()));
if (typeface) {
return typeface;
}
- return SkTypeface::MakeFromName("Emoji", SkFontStyle());
+ sk_sp<SkTypeface> fallback(fm->matchFamilyStyleCharacter(
+ colorEmojiFontName, SkFontStyle(), nullptr /* bcp47 */, 0 /* bcp47Count */,
+ 0x1f4b0 /* character: πŸ’° */));
+ if (fallback) {
+ return fallback;
+ }
+ // If we don't have Segoe UI Emoji and can't find a fallback, try Segoe UI Symbol.
+ // Windows 7 does not have Segoe UI Emoji; Segoe UI Symbol has the (non - color) emoji.
+ return SkTypeface::MakeFromName("Segoe UI Symbol", SkFontStyle());
+
+#elif defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
+ return SkTypeface::MakeFromName("Apple Color Emoji", SkFontStyle());
+
+#else
+ return MakeResourceAsTypeface("fonts/Funkster.ttf");
+
+#endif
}
const char* emoji_sample_text() {
- return "\xF0\x9F\x98\x80" " " "\xE2\x99\xA2"; // πŸ˜€ β™’
+#if defined(SK_BUILD_FOR_WIN) || defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
+ return "\xF0\x9F\x92\xB0" "\xF0\x9F\x8F\xA1" "\xF0\x9F\x8E\x85" // πŸ’°πŸ‘πŸŽ…
+ "\xF0\x9F\x8D\xAA" "\xF0\x9F\x8D\x95" "\xF0\x9F\x9A\x80" // πŸͺπŸ•πŸš€
+ "\xF0\x9F\x9A\xBB" "\xF0\x9F\x92\xA9" "\xF0\x9F\x93\xB7" // πŸš»πŸ’©πŸ“·
+ "\xF0\x9F\x93\xA6" // πŸ“¦
+ "\xF0\x9F\x87\xBA" "\xF0\x9F\x87\xB8" "\xF0\x9F\x87\xA6"; // πŸ‡ΊπŸ‡ΈπŸ‡¦
+#else
+ return "Hamburgefons";
+#endif
}
static const char* platform_os_name() {