blob: deed7dcad22a0796a44217fb8dfb4df2b7fbeb0d [file] [log] [blame]
joshualitt1107e902015-05-11 14:52:11 -07001/*
2 * Copyright 2015 Google Inc.
3 *
4 * Use of this source code is governed by a BD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#include "gm.h"
Mike Klein33d20552017-03-22 13:47:51 -04009#include "sk_tool_utils.h"
joshualitt1107e902015-05-11 14:52:11 -070010
11#include "SkBlurMask.h"
joshualitt1107e902015-05-11 14:52:11 -070012#include "SkCanvas.h"
Mike Reed1be1f8d2018-03-14 13:01:17 -040013#include "SkMaskFilter.h"
joshualitt1107e902015-05-11 14:52:11 -070014#include "SkTextBlob.h"
15
16// This test ensures that glyphs whose point size is less than the SkGlyphCache's maxmium, but
17// who have a large blur, are still handled correctly
halcanary2a243382015-09-09 08:16:41 -070018DEF_SIMPLE_GM(largeglyphblur, canvas, 1920, 600) {
Mike Reedea8900e2018-12-22 17:37:30 -050019 const char text[] = "Hamburgefons";
joshualitt1107e902015-05-11 14:52:11 -070020
Mike Reedea8900e2018-12-22 17:37:30 -050021 SkFont font(sk_tool_utils::create_portable_typeface(), 256);
22 auto blob = SkTextBlob::MakeFromText(text, strlen(text), font);
joshualitt1107e902015-05-11 14:52:11 -070023
Mike Reedea8900e2018-12-22 17:37:30 -050024 // setup up maskfilter
25 const SkScalar kSigma = SkBlurMask::ConvertRadiusToSigma(SkIntToScalar(40));
joshualitt1107e902015-05-11 14:52:11 -070026
Mike Reedea8900e2018-12-22 17:37:30 -050027 SkPaint blurPaint;
28 blurPaint.setMaskFilter(SkMaskFilter::MakeBlur(kNormal_SkBlurStyle, kSigma));
joshualitt1107e902015-05-11 14:52:11 -070029
Mike Reedea8900e2018-12-22 17:37:30 -050030 canvas->drawTextBlob(blob, 10, 200, blurPaint);
31 canvas->drawTextBlob(blob, 10, 200, SkPaint());
joshualitt1107e902015-05-11 14:52:11 -070032
Mike Reedea8900e2018-12-22 17:37:30 -050033 size_t len = strlen(text);
34 canvas->drawSimpleText(text, len, kUTF8_SkTextEncoding, 10, 500, font, blurPaint);
35 canvas->drawSimpleText(text, len, kUTF8_SkTextEncoding, 10, 500, font, SkPaint());
joshualitt1107e902015-05-11 14:52:11 -070036}