15a64902ee92847f53dfc5b211da19d074179be64reed@google.com/* 25a64902ee92847f53dfc5b211da19d074179be64reed@google.com * Copyright 2013 Google Inc. 35a64902ee92847f53dfc5b211da19d074179be64reed@google.com * 45a64902ee92847f53dfc5b211da19d074179be64reed@google.com * Use of this source code is governed by a BSD-style license that can be 55a64902ee92847f53dfc5b211da19d074179be64reed@google.com * found in the LICENSE file. 65a64902ee92847f53dfc5b211da19d074179be64reed@google.com */ 75a64902ee92847f53dfc5b211da19d074179be64reed@google.com 85a64902ee92847f53dfc5b211da19d074179be64reed@google.com#include "gm.h" 933d2055e594177b27360f84e0631b26d74a55a9bMike Klein#include "sk_tool_utils.h" 105a64902ee92847f53dfc5b211da19d074179be64reed@google.com#include "SkCanvas.h" 115a64902ee92847f53dfc5b211da19d074179be64reed@google.com#include "SkPath.h" 125a64902ee92847f53dfc5b211da19d074179be64reed@google.com 135a64902ee92847f53dfc5b211da19d074179be64reed@google.com/** 145a64902ee92847f53dfc5b211da19d074179be64reed@google.com * Skia may draw from outlines when the size is very large, so we exercise that 155a64902ee92847f53dfc5b211da19d074179be64reed@google.com * here. 165a64902ee92847f53dfc5b211da19d074179be64reed@google.com*/ 175a64902ee92847f53dfc5b211da19d074179be64reed@google.com 185a64902ee92847f53dfc5b211da19d074179be64reed@google.comclass BigTextGM : public skiagm::GM { 195a64902ee92847f53dfc5b211da19d074179be64reed@google.compublic: 205a64902ee92847f53dfc5b211da19d074179be64reed@google.com BigTextGM() {} 215a64902ee92847f53dfc5b211da19d074179be64reed@google.com 225a64902ee92847f53dfc5b211da19d074179be64reed@google.comprotected: 23a90c6803865766d28e92091f56f718f5e41fe80fcommit-bot@chromium.org 2436352bf5e38f45a70ee4f4fc132a38048d38206dmtklein SkString onShortName() override { 255a64902ee92847f53dfc5b211da19d074179be64reed@google.com return SkString("bigtext"); 265a64902ee92847f53dfc5b211da19d074179be64reed@google.com } 275a64902ee92847f53dfc5b211da19d074179be64reed@google.com 2836352bf5e38f45a70ee4f4fc132a38048d38206dmtklein SkISize onISize() override { 295a64902ee92847f53dfc5b211da19d074179be64reed@google.com return SkISize::Make(640, 480); 305a64902ee92847f53dfc5b211da19d074179be64reed@google.com } 315a64902ee92847f53dfc5b211da19d074179be64reed@google.com 3236352bf5e38f45a70ee4f4fc132a38048d38206dmtklein void onDraw(SkCanvas* canvas) override { 335a64902ee92847f53dfc5b211da19d074179be64reed@google.com SkPaint paint; 345a64902ee92847f53dfc5b211da19d074179be64reed@google.com paint.setAntiAlias(true); 351818acb6a4b11cd9a1d44ce5dde77452502a9796caryclark sk_tool_utils::set_portable_typeface(&paint); 365a64902ee92847f53dfc5b211da19d074179be64reed@google.com paint.setTextSize(1500); 375a64902ee92847f53dfc5b211da19d074179be64reed@google.com 385a64902ee92847f53dfc5b211da19d074179be64reed@google.com SkRect r; 395a64902ee92847f53dfc5b211da19d074179be64reed@google.com (void)paint.measureText("/", 1, &r); 405a64902ee92847f53dfc5b211da19d074179be64reed@google.com SkPoint pos = { 415a64902ee92847f53dfc5b211da19d074179be64reed@google.com this->width()/2 - r.centerX(), 425a64902ee92847f53dfc5b211da19d074179be64reed@google.com this->height()/2 - r.centerY() 435a64902ee92847f53dfc5b211da19d074179be64reed@google.com }; 445a64902ee92847f53dfc5b211da19d074179be64reed@google.com 455a64902ee92847f53dfc5b211da19d074179be64reed@google.com paint.setColor(SK_ColorRED); 465a64902ee92847f53dfc5b211da19d074179be64reed@google.com canvas->drawText("/", 1, pos.fX, pos.fY, paint); 47c5fd093ae27247d0b5a28e5c741a2c1b6ff8b870skia.committer@gmail.com 485a64902ee92847f53dfc5b211da19d074179be64reed@google.com paint.setColor(SK_ColorBLUE); 495a64902ee92847f53dfc5b211da19d074179be64reed@google.com canvas->drawPosText("\\", 1, &pos, paint); 505a64902ee92847f53dfc5b211da19d074179be64reed@google.com } 515a64902ee92847f53dfc5b211da19d074179be64reed@google.com 525a64902ee92847f53dfc5b211da19d074179be64reed@google.comprivate: 535a64902ee92847f53dfc5b211da19d074179be64reed@google.com typedef skiagm::GM INHERITED; 545a64902ee92847f53dfc5b211da19d074179be64reed@google.com}; 555a64902ee92847f53dfc5b211da19d074179be64reed@google.com 56385fe4d4b62d7d1dd76116dd570df3290a2f487bhalcanaryDEF_GM(return new BigTextGM;) 57