OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2011 Google Inc. | 2 * Copyright 2011 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 #include "gm.h" | 7 #include "gm.h" |
8 #include "SkCanvas.h" | 8 #include "SkCanvas.h" |
9 #include "SkPaint.h" | 9 #include "SkPaint.h" |
10 #include "SkRandom.h" | 10 #include "SkRandom.h" |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
75 const char* fName; | 75 const char* fName; |
76 }; | 76 }; |
77 PathAndName path; | 77 PathAndName path; |
78 path.fPath.moveTo(25*SK_Scalar1, 15*SK_Scalar1); | 78 path.fPath.moveTo(25*SK_Scalar1, 15*SK_Scalar1); |
79 path.fPath.lineTo(75*SK_Scalar1, 15*SK_Scalar1); | 79 path.fPath.lineTo(75*SK_Scalar1, 15*SK_Scalar1); |
80 path.fName = "moveTo-line"; | 80 path.fName = "moveTo-line"; |
81 | 81 |
82 SkPaint titlePaint; | 82 SkPaint titlePaint; |
83 titlePaint.setColor(SK_ColorBLACK); | 83 titlePaint.setColor(SK_ColorBLACK); |
84 titlePaint.setAntiAlias(true); | 84 titlePaint.setAntiAlias(true); |
85 sk_tool_utils::set_portable_typeface(&titlePaint); | 85 sk_tool_utils::set_portable_typeface_always(&titlePaint); |
86 titlePaint.setLCDRenderText(true); | |
87 titlePaint.setTextSize(15 * SK_Scalar1); | 86 titlePaint.setTextSize(15 * SK_Scalar1); |
88 const char title[] = "Line Drawn Into Rectangle Clips With " | 87 const char title[] = "Line Drawn Into Rectangle Clips With " |
89 "Indicated Style, Fill and Linecaps, with stroke wi
dth 10"; | 88 "Indicated Style, Fill and Linecaps, with stroke wi
dth 10"; |
90 canvas->drawText(title, strlen(title), | 89 canvas->drawText(title, strlen(title), |
91 20 * SK_Scalar1, | 90 20 * SK_Scalar1, |
92 20 * SK_Scalar1, | 91 20 * SK_Scalar1, |
93 titlePaint); | 92 titlePaint); |
94 | 93 |
95 SkRandom rand; | 94 SkRandom rand; |
96 SkRect rect = SkRect::MakeWH(100*SK_Scalar1, 30*SK_Scalar1); | 95 SkRect rect = SkRect::MakeWH(100*SK_Scalar1, 30*SK_Scalar1); |
97 canvas->save(); | 96 canvas->save(); |
98 canvas->translate(10 * SK_Scalar1, 30 * SK_Scalar1); | 97 canvas->translate(10 * SK_Scalar1, 30 * SK_Scalar1); |
99 canvas->save(); | 98 canvas->save(); |
100 for (size_t cap = 0; cap < SK_ARRAY_COUNT(gCaps); ++cap) { | 99 for (size_t cap = 0; cap < SK_ARRAY_COUNT(gCaps); ++cap) { |
101 if (0 < cap) { | 100 if (0 < cap) { |
102 canvas->translate((rect.width() + 40 * SK_Scalar1) * SK_ARRAY_CO
UNT(gStyles), 0); | 101 canvas->translate((rect.width() + 40 * SK_Scalar1) * SK_ARRAY_CO
UNT(gStyles), 0); |
103 } | 102 } |
104 canvas->save(); | 103 canvas->save(); |
105 for (size_t fill = 0; fill < SK_ARRAY_COUNT(gFills); ++fill) { | 104 for (size_t fill = 0; fill < SK_ARRAY_COUNT(gFills); ++fill) { |
106 if (0 < fill) { | 105 if (0 < fill) { |
107 canvas->translate(0, rect.height() + 40 * SK_Scalar1); | 106 canvas->translate(0, rect.height() + 40 * SK_Scalar1); |
108 } | 107 } |
109 canvas->save(); | 108 canvas->save(); |
110 for (size_t style = 0; style < SK_ARRAY_COUNT(gStyles); ++style)
{ | 109 for (size_t style = 0; style < SK_ARRAY_COUNT(gStyles); ++style)
{ |
111 if (0 < style) { | 110 if (0 < style) { |
112 canvas->translate(rect.width() + 40 * SK_Scalar1, 0); | 111 canvas->translate(rect.width() + 40 * SK_Scalar1, 0); |
113 } | 112 } |
114 | 113 |
115 SkColor color = 0xff007000; | 114 SkColor color = sk_tool_utils::color_to_565(0xff007000); |
116 this->drawPath(path.fPath, canvas, color, rect, | 115 this->drawPath(path.fPath, canvas, color, rect, |
117 gCaps[cap].fCap, gCaps[cap].fJoin, gStyles[s
tyle].fStyle, | 116 gCaps[cap].fCap, gCaps[cap].fJoin, gStyles[s
tyle].fStyle, |
118 gFills[fill].fFill, SK_Scalar1*10); | 117 gFills[fill].fFill, SK_Scalar1*10); |
119 | 118 |
120 SkPaint rectPaint; | 119 SkPaint rectPaint; |
121 rectPaint.setColor(SK_ColorBLACK); | 120 rectPaint.setColor(SK_ColorBLACK); |
122 rectPaint.setStyle(SkPaint::kStroke_Style); | 121 rectPaint.setStyle(SkPaint::kStroke_Style); |
123 rectPaint.setStrokeWidth(-1); | 122 rectPaint.setStrokeWidth(-1); |
124 rectPaint.setAntiAlias(true); | 123 rectPaint.setAntiAlias(true); |
125 canvas->drawRect(rect, rectPaint); | 124 canvas->drawRect(rect, rectPaint); |
126 | 125 |
127 SkPaint labelPaint; | 126 SkPaint labelPaint; |
128 labelPaint.setColor(color); | 127 labelPaint.setColor(color); |
129 labelPaint.setAntiAlias(true); | 128 labelPaint.setAntiAlias(true); |
130 sk_tool_utils::set_portable_typeface(&labelPaint); | 129 sk_tool_utils::set_portable_typeface_always(&labelPaint); |
131 labelPaint.setLCDRenderText(true); | |
132 labelPaint.setTextSize(10 * SK_Scalar1); | 130 labelPaint.setTextSize(10 * SK_Scalar1); |
133 canvas->drawText(gStyles[style].fName, | 131 canvas->drawText(gStyles[style].fName, |
134 strlen(gStyles[style].fName), | 132 strlen(gStyles[style].fName), |
135 0, rect.height() + 12 * SK_Scalar1, | 133 0, rect.height() + 12 * SK_Scalar1, |
136 labelPaint); | 134 labelPaint); |
137 canvas->drawText(gFills[fill].fName, | 135 canvas->drawText(gFills[fill].fName, |
138 strlen(gFills[fill].fName), | 136 strlen(gFills[fill].fName), |
139 0, rect.height() + 24 * SK_Scalar1, | 137 0, rect.height() + 24 * SK_Scalar1, |
140 labelPaint); | 138 labelPaint); |
141 canvas->drawText(gCaps[cap].fName, | 139 canvas->drawText(gCaps[cap].fName, |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
219 }; | 217 }; |
220 PathAndName path; | 218 PathAndName path; |
221 path.fPath.moveTo(25*SK_Scalar1, 15*SK_Scalar1); | 219 path.fPath.moveTo(25*SK_Scalar1, 15*SK_Scalar1); |
222 path.fPath.lineTo(75*SK_Scalar1, 15*SK_Scalar1); | 220 path.fPath.lineTo(75*SK_Scalar1, 15*SK_Scalar1); |
223 path.fPath.close(); | 221 path.fPath.close(); |
224 path.fName = "moveTo-line-close"; | 222 path.fName = "moveTo-line-close"; |
225 | 223 |
226 SkPaint titlePaint; | 224 SkPaint titlePaint; |
227 titlePaint.setColor(SK_ColorBLACK); | 225 titlePaint.setColor(SK_ColorBLACK); |
228 titlePaint.setAntiAlias(true); | 226 titlePaint.setAntiAlias(true); |
229 sk_tool_utils::set_portable_typeface(&titlePaint); | 227 sk_tool_utils::set_portable_typeface_always(&titlePaint); |
230 titlePaint.setLCDRenderText(true); | |
231 titlePaint.setTextSize(15 * SK_Scalar1); | 228 titlePaint.setTextSize(15 * SK_Scalar1); |
232 const char title[] = "Line Closed Drawn Into Rectangle Clips With " | 229 const char title[] = "Line Closed Drawn Into Rectangle Clips With " |
233 "Indicated Style, Fill and Linecaps, with stroke wi
dth 10"; | 230 "Indicated Style, Fill and Linecaps, with stroke wi
dth 10"; |
234 canvas->drawText(title, strlen(title), | 231 canvas->drawText(title, strlen(title), |
235 20 * SK_Scalar1, | 232 20 * SK_Scalar1, |
236 20 * SK_Scalar1, | 233 20 * SK_Scalar1, |
237 titlePaint); | 234 titlePaint); |
238 | 235 |
239 SkRandom rand; | 236 SkRandom rand; |
240 SkRect rect = SkRect::MakeWH(100*SK_Scalar1, 30*SK_Scalar1); | 237 SkRect rect = SkRect::MakeWH(100*SK_Scalar1, 30*SK_Scalar1); |
241 canvas->save(); | 238 canvas->save(); |
242 canvas->translate(10 * SK_Scalar1, 30 * SK_Scalar1); | 239 canvas->translate(10 * SK_Scalar1, 30 * SK_Scalar1); |
243 canvas->save(); | 240 canvas->save(); |
244 for (size_t cap = 0; cap < SK_ARRAY_COUNT(gCaps); ++cap) { | 241 for (size_t cap = 0; cap < SK_ARRAY_COUNT(gCaps); ++cap) { |
245 if (0 < cap) { | 242 if (0 < cap) { |
246 canvas->translate((rect.width() + 40 * SK_Scalar1) * SK_ARRAY_CO
UNT(gStyles), 0); | 243 canvas->translate((rect.width() + 40 * SK_Scalar1) * SK_ARRAY_CO
UNT(gStyles), 0); |
247 } | 244 } |
248 canvas->save(); | 245 canvas->save(); |
249 for (size_t fill = 0; fill < SK_ARRAY_COUNT(gFills); ++fill) { | 246 for (size_t fill = 0; fill < SK_ARRAY_COUNT(gFills); ++fill) { |
250 if (0 < fill) { | 247 if (0 < fill) { |
251 canvas->translate(0, rect.height() + 40 * SK_Scalar1); | 248 canvas->translate(0, rect.height() + 40 * SK_Scalar1); |
252 } | 249 } |
253 canvas->save(); | 250 canvas->save(); |
254 for (size_t style = 0; style < SK_ARRAY_COUNT(gStyles); ++style)
{ | 251 for (size_t style = 0; style < SK_ARRAY_COUNT(gStyles); ++style)
{ |
255 if (0 < style) { | 252 if (0 < style) { |
256 canvas->translate(rect.width() + 40 * SK_Scalar1, 0); | 253 canvas->translate(rect.width() + 40 * SK_Scalar1, 0); |
257 } | 254 } |
258 | 255 |
259 SkColor color = 0xff007000; | 256 SkColor color = sk_tool_utils::color_to_565(0xff007000); |
260 this->drawPath(path.fPath, canvas, color, rect, | 257 this->drawPath(path.fPath, canvas, color, rect, |
261 gCaps[cap].fCap, gCaps[cap].fJoin, gStyles[s
tyle].fStyle, | 258 gCaps[cap].fCap, gCaps[cap].fJoin, gStyles[s
tyle].fStyle, |
262 gFills[fill].fFill, SK_Scalar1*10); | 259 gFills[fill].fFill, SK_Scalar1*10); |
263 | 260 |
264 SkPaint rectPaint; | 261 SkPaint rectPaint; |
265 rectPaint.setColor(SK_ColorBLACK); | 262 rectPaint.setColor(SK_ColorBLACK); |
266 rectPaint.setStyle(SkPaint::kStroke_Style); | 263 rectPaint.setStyle(SkPaint::kStroke_Style); |
267 rectPaint.setStrokeWidth(-1); | 264 rectPaint.setStrokeWidth(-1); |
268 rectPaint.setAntiAlias(true); | 265 rectPaint.setAntiAlias(true); |
269 canvas->drawRect(rect, rectPaint); | 266 canvas->drawRect(rect, rectPaint); |
270 | 267 |
271 SkPaint labelPaint; | 268 SkPaint labelPaint; |
272 labelPaint.setColor(color); | 269 labelPaint.setColor(color); |
273 labelPaint.setAntiAlias(true); | 270 labelPaint.setAntiAlias(true); |
274 sk_tool_utils::set_portable_typeface(&labelPaint); | 271 sk_tool_utils::set_portable_typeface_always(&labelPaint); |
275 labelPaint.setLCDRenderText(true); | |
276 labelPaint.setTextSize(10 * SK_Scalar1); | 272 labelPaint.setTextSize(10 * SK_Scalar1); |
277 canvas->drawText(gStyles[style].fName, | 273 canvas->drawText(gStyles[style].fName, |
278 strlen(gStyles[style].fName), | 274 strlen(gStyles[style].fName), |
279 0, rect.height() + 12 * SK_Scalar1, | 275 0, rect.height() + 12 * SK_Scalar1, |
280 labelPaint); | 276 labelPaint); |
281 canvas->drawText(gFills[fill].fName, | 277 canvas->drawText(gFills[fill].fName, |
282 strlen(gFills[fill].fName), | 278 strlen(gFills[fill].fName), |
283 0, rect.height() + 24 * SK_Scalar1, | 279 0, rect.height() + 24 * SK_Scalar1, |
284 labelPaint); | 280 labelPaint); |
285 canvas->drawText(gCaps[cap].fName, | 281 canvas->drawText(gCaps[cap].fName, |
(...skipping 15 matching lines...) Expand all Loading... |
301 | 297 |
302 ////////////////////////////////////////////////////////////////////////////// | 298 ////////////////////////////////////////////////////////////////////////////// |
303 | 299 |
304 static GM* LinePathFactory(void*) { return new LinePathGM; } | 300 static GM* LinePathFactory(void*) { return new LinePathGM; } |
305 static GMRegistry regLinePath(LinePathFactory); | 301 static GMRegistry regLinePath(LinePathFactory); |
306 | 302 |
307 static GM* LineClosePathFactory(void*) { return new LineClosePathGM; } | 303 static GM* LineClosePathFactory(void*) { return new LineClosePathGM; } |
308 static GMRegistry regLineClosePath(LineClosePathFactory); | 304 static GMRegistry regLineClosePath(LineClosePathFactory); |
309 | 305 |
310 } | 306 } |
OLD | NEW |