Index: tools/sk_tool_utils.cpp |
diff --git a/tools/sk_tool_utils.cpp b/tools/sk_tool_utils.cpp |
index 1b35005d963a19146d429a912b643f1073ade5e1..6a2beacac1cc84b3b2efea2cf04faf4bfc45aac3 100644 |
--- a/tools/sk_tool_utils.cpp |
+++ b/tools/sk_tool_utils.cpp |
@@ -6,14 +6,16 @@ |
*/ |
#include "sk_tool_utils.h" |
-#include "../src/fonts/SkTestScalerContext.h" |
+#include "sk_tool_utils_flags.h" |
#include "SkBitmap.h" |
#include "SkCanvas.h" |
+#include "SkTestScalerContext.h" |
-namespace sk_tool_utils { |
+DEFINE_bool(portableFonts, false, "Use portable fonts"); |
+DEFINE_bool(resourceFonts, false, "Use resource fonts"); |
-bool gEnablePortableTypeface = false; |
+namespace sk_tool_utils { |
const char* colortype_name(SkColorType ct) { |
switch (ct) { |
@@ -30,12 +32,21 @@ const char* colortype_name(SkColorType ct) { |
} |
} |
-SkPaint::FontMetrics create_font(SkTDArray<SkPath*>& , SkTDArray<SkFixed>& ); |
- |
-void set_portable_typeface(SkPaint* paint, SkTypeface::Style style) { |
- if (gEnablePortableTypeface) { |
- SkSafeUnref(paint->setTypeface(CreateTestTypeface(create_font, style))); |
+SkTypeface* create_portable_typeface(const char* name, SkTypeface::Style style) { |
+ SkTypeface* face; |
+ if (FLAGS_portableFonts) { |
+ face = create_font(name, style); |
+ } else if (FLAGS_resourceFonts) { |
+ face = resource_font(name, style); |
+ } else { |
+ face = SkTypeface::CreateFromName(name, style); |
} |
+ return face; |
+} |
+ |
+void set_portable_typeface(SkPaint* paint, const char* name, SkTypeface::Style style) { |
+ SkTypeface* face = create_portable_typeface(name, style); |
+ SkSafeUnref(paint->setTypeface(face)); |
} |
void write_pixels(SkCanvas* canvas, const SkBitmap& bitmap, int x, int y, |