Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(342)

Side by Side Diff: gm/colorwheel.cpp

Issue 1306133003: GMs: change some GMs to use SkImage over SkBitmap (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | gm/grayscalejpg.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2014 Google Inc. 2 * Copyright 2014 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "Resources.h" 8 #include "Resources.h"
9 #include "SkData.h" 9 #include "SkData.h"
10 #include "SkImage.h"
10 #include "gm.h" 11 #include "gm.h"
11 #include "sk_tool_utils.h" 12 #include "sk_tool_utils.h"
12 13
13 static void draw_bitmap(SkCanvas* canvas, const char* resource, int x, int y) { 14 static void draw_image(SkCanvas* canvas, const char* resource, int x, int y) {
14 SkBitmap bitmap; 15 SkAutoTUnref<SkImage> image(GetResourceAsImage(resource));
15 if (GetResourceAsBitmap(resource, &bitmap)) { 16 if (image) {
16 canvas->drawBitmap(bitmap, SkIntToScalar(x), SkIntToScalar(y)); 17 canvas->drawImage(image, SkIntToScalar(x), SkIntToScalar(y));
17 } else { 18 } else {
18 SkDebugf("\nCould not decode file '%s'. Did you forget" 19 SkDebugf("\nCould not decode file '%s'. Did you forget"
19 " to set the resourcePath?\n", resource); 20 " to set the resourcePath?\n", resource);
20 } 21 }
21 } 22 }
22 23
23 /* 24 /*
24 This GM tests whether the image decoders properly decode each color 25 This GM tests whether the image decoders properly decode each color
25 channel. Four copies of the same image should appear in the GM, and 26 channel. Four copies of the same image should appear in the GM, and
26 the letter R should be red, B should be blue, G green, C cyan, M 27 the letter R should be red, B should be blue, G green, C cyan, M
27 magenta, Y yellow, and K black. In all but the JPEG version of the 28 magenta, Y yellow, and K black. In all but the JPEG version of the
28 image, the letters should be on a white disc on a transparent 29 image, the letters should be on a white disc on a transparent
29 background (rendered as a checkerboard). The JPEG image has a grey 30 background (rendered as a checkerboard). The JPEG image has a grey
30 background and compression artifacts. 31 background and compression artifacts.
31 */ 32 */
32 DEF_SIMPLE_GM(colorwheel, canvas, 256, 256) { 33 DEF_SIMPLE_GM(colorwheel, canvas, 256, 256) {
33 sk_tool_utils::draw_checkerboard(canvas); 34 sk_tool_utils::draw_checkerboard(canvas);
34 draw_bitmap(canvas, "color_wheel.png", 0, 0); // top left 35 draw_image(canvas, "color_wheel.png", 0, 0); // top left
35 draw_bitmap(canvas, "color_wheel.gif", 128, 0); // top right 36 draw_image(canvas, "color_wheel.gif", 128, 0); // top right
36 draw_bitmap(canvas, "color_wheel.webp", 0, 128); // bottom left 37 draw_image(canvas, "color_wheel.webp", 0, 128); // bottom left
37 draw_bitmap(canvas, "color_wheel.jpg", 128, 128); // bottom right 38 draw_image(canvas, "color_wheel.jpg", 128, 128); // bottom right
38 } 39 }
39 40
40 DEF_SIMPLE_GM(colorwheelnative, canvas, 128, 28) { 41 DEF_SIMPLE_GM(colorwheelnative, canvas, 128, 28) {
41 SkPaint paint; 42 SkPaint paint;
42 sk_tool_utils::set_portable_typeface(&paint, NULL, SkTypeface::kBold); 43 sk_tool_utils::set_portable_typeface(&paint, NULL, SkTypeface::kBold);
43 paint.setTextSize(18.0f); 44 paint.setTextSize(18.0f);
44 45
45 canvas->clear(sk_tool_utils::color_to_565(SK_ColorLTGRAY)); 46 canvas->clear(sk_tool_utils::color_to_565(SK_ColorLTGRAY));
46 paint.setColor(SK_ColorRED); 47 paint.setColor(SK_ColorRED);
47 canvas->drawText("R", 1, 8.0f, 20.0f, paint); 48 canvas->drawText("R", 1, 8.0f, 20.0f, paint);
48 paint.setColor(SK_ColorGREEN); 49 paint.setColor(SK_ColorGREEN);
49 canvas->drawText("G", 1, 24.0f, 20.0f, paint); 50 canvas->drawText("G", 1, 24.0f, 20.0f, paint);
50 paint.setColor(SK_ColorBLUE); 51 paint.setColor(SK_ColorBLUE);
51 canvas->drawText("B", 1, 40.0f, 20.0f, paint); 52 canvas->drawText("B", 1, 40.0f, 20.0f, paint);
52 paint.setColor(SK_ColorCYAN); 53 paint.setColor(SK_ColorCYAN);
53 canvas->drawText("C", 1, 56.0f, 20.0f, paint); 54 canvas->drawText("C", 1, 56.0f, 20.0f, paint);
54 paint.setColor(SK_ColorMAGENTA); 55 paint.setColor(SK_ColorMAGENTA);
55 canvas->drawText("M", 1, 72.0f, 20.0f, paint); 56 canvas->drawText("M", 1, 72.0f, 20.0f, paint);
56 paint.setColor(SK_ColorYELLOW); 57 paint.setColor(SK_ColorYELLOW);
57 canvas->drawText("Y", 1, 88.0f, 20.0f, paint); 58 canvas->drawText("Y", 1, 88.0f, 20.0f, paint);
58 paint.setColor(SK_ColorBLACK); 59 paint.setColor(SK_ColorBLACK);
59 canvas->drawText("K", 1, 104.0f, 20.0f, paint); 60 canvas->drawText("K", 1, 104.0f, 20.0f, paint);
60 } 61 }
OLDNEW
« no previous file with comments | « no previous file | gm/grayscalejpg.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698