• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #include "dtk_test_ext.h"
16 #include "text/font.h"
17 #include "recording/mem_allocator.h"
18 #include "text/font_mgr.h"
19 #include "text/font_style_set.h"
20 #include "text/rs_xform.h"
21 #include "utils/point.h"
22 #include "utils/rect.h"
23 #include "text/typeface.h"
24 
25 /*
26 测试类:FontMgr
27 测试接口:LoadDynamicFont
28 测试内容:对接口入参familyName、data和size取值组合,构造typeface字体格式,并指定在font上,最终通过drawtextblob接口将text内容绘制在画布上
29 */
30 
31 namespace OHOS {
32 namespace Rosen {
33 
MakeData(std::shared_ptr<Drawing::FontMgr> & fontMgr,bool createstyleset)34 static std::shared_ptr<Drawing::Data> MakeData(std::shared_ptr<Drawing::FontMgr>& fontMgr, bool createstyleset)
35 {
36     std::shared_ptr<Drawing::Typeface> typeface;
37 
38     if (createstyleset) {
39         std::shared_ptr<Drawing::FontStyleSet> fontStyleSet(fontMgr->CreateStyleSet(0));
40         typeface = std::shared_ptr<Drawing::Typeface>(fontStyleSet->CreateTypeface(0));
41     } else {
42         std::string emoji_familyName = "HMOS Color Emoji";
43         std::shared_ptr<Drawing::FontStyleSet> fontStyleSet(fontMgr->MatchFamily(emoji_familyName.c_str()));
44         typeface = std::shared_ptr<Drawing::Typeface>(fontStyleSet->CreateTypeface(0));
45     }
46 
47     auto data = typeface->Serialize();
48     return data;
49 }
50 
DrawTexts(TestPlaybackCanvas * playbackCanvas,std::shared_ptr<Drawing::Typeface> & typeface)51 static void DrawTexts(TestPlaybackCanvas* playbackCanvas, std::shared_ptr<Drawing::Typeface>& typeface)
52 {
53     auto font = Drawing::Font(typeface, 50.f, 1.0f, 0.f);
54     std::string text1 = "DDGR ddgr 鸿蒙 !@#%¥^&*;:,。";
55     std::string text2 = "-_=+()123`.---~|{}【】,./?、?<>《》";
56     std::string text3 = "\xE2\x99\x88\xE2\x99\x8A\xE2\x99\x88\xE2\x99\x8C\xE2\x99\x8D\xE2\x99\x8D";
57     std::string texts[] = {text1, text2, text3};
58     int line = 200;
59     int interval2 = 200;
60     for (auto text :texts) {
61         std::shared_ptr<Drawing::TextBlob> textBlob = Drawing::TextBlob::MakeFromText(text.c_str(), text.size(), font);
62         Drawing::Brush brush;
63         playbackCanvas->AttachBrush(brush);
64         playbackCanvas->DrawTextBlob(textBlob.get(), interval2, line);
65         line += interval2;
66         playbackCanvas->DetachBrush();
67         Drawing::Pen pen;
68         playbackCanvas->AttachPen(pen);
69         playbackCanvas->DrawTextBlob(textBlob.get(), interval2, line);
70         line += interval2;
71         playbackCanvas->DetachPen();
72     }
73 }
74 
75 //对应用例 FontMgr_LoadDynamicFont_3001
76 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 1)
77 {
78     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
79     std::string familyName = "abcd";
80 
81     auto emoji_data = MakeData(fontMgr, false);
82     auto data1 = MakeData(fontMgr, true);
83 
84     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
85         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
86     ));
87 
88     DrawTexts(playbackCanvas_, typeface);
89 }
90 
91 //对应用例 FontMgr_LoadDynamicFont_3002
92 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 2)
93 {
94     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
95     std::string familyName = "";
96 
97     auto emoji_data = MakeData(fontMgr, false);
98     auto data1 = MakeData(fontMgr, true);
99 
100     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
101         familyName, std::move((uint8_t *)data1->GetData()), 0
102     ));
103 
104     DrawTexts(playbackCanvas_, typeface);
105 }
106 
107 //对应用例 FontMgr_LoadDynamicFont_3003
108 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 3)
109 {
110     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
111     std::string familyName = "";
112 
113     auto emoji_data = MakeData(fontMgr, false);
114     auto data1 = MakeData(fontMgr, true);
115 
116     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
117         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
118     ));
119 
120     DrawTexts(playbackCanvas_, typeface);
121 }
122 
123 //对应用例 FontMgr_LoadDynamicFont_3004
124 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 4)
125 {
126     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
127     std::string familyName = "abcd";
128 
129     auto emoji_data = MakeData(fontMgr, false);
130     auto data1 = MakeData(fontMgr, true);
131 
132     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
133         familyName, nullptr, data1->GetSize()
134     ));
135 
136     DrawTexts(playbackCanvas_, typeface);
137 }
138 
139 //对应用例 FontMgr_LoadDynamicFont_3005
140 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 5)
141 {
142     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
143     std::string familyName = "abcd";
144 
145     auto emoji_data = MakeData(fontMgr, false);
146     auto data1 = MakeData(fontMgr, true);
147 
148     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
149         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
150     ));
151 
152     DrawTexts(playbackCanvas_, typeface);
153 }
154 
155 //对应用例 FontMgr_LoadDynamicFont_3006
156 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 6)
157 {
158     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
159     std::string familyName = "";
160 
161     auto emoji_data = MakeData(fontMgr, false);
162     auto data1 = MakeData(fontMgr, true);
163 
164     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
165         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
166     ));
167 
168     DrawTexts(playbackCanvas_, typeface);
169 }
170 
171 //对应用例 FontMgr_LoadDynamicFont_3007
172 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 7)
173 {
174     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
175     std::string familyName = "abcd";
176 
177     auto emoji_data = MakeData(fontMgr, false);
178     auto data1 = MakeData(fontMgr, true);
179 
180     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
181         familyName, std::move((uint8_t *)data1->GetData()), 0
182     ));
183 
184     DrawTexts(playbackCanvas_, typeface);
185 }
186 
187 //对应用例 FontMgr_LoadDynamicFont_3008
188 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 8)
189 {
190     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
191     std::string familyName = "HMOS Color Emoji";
192 
193     auto emoji_data = MakeData(fontMgr, false);
194     auto data1 = MakeData(fontMgr, true);
195 
196     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
197         familyName, std::move((uint8_t *)data1->GetData()), 0
198     ));
199 
200     DrawTexts(playbackCanvas_, typeface);
201 }
202 
203 //对应用例 FontMgr_LoadDynamicFont_3009
204 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 9)
205 {
206     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
207     std::string familyName = "";
208 
209     auto emoji_data = MakeData(fontMgr, false);
210     auto data1 = MakeData(fontMgr, true);
211 
212     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
213         familyName, nullptr, data1->GetSize()
214     ));
215 
216     DrawTexts(playbackCanvas_, typeface);
217 }
218 
219 //对应用例 FontMgr_LoadDynamicFont_3010
220 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 10)
221 {
222     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
223     std::string familyName = "HMOS Color Emoji";
224 
225     auto emoji_data = MakeData(fontMgr, false);
226     auto data1 = MakeData(fontMgr, true);
227 
228     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
229         familyName, nullptr, 0
230     ));
231 
232     DrawTexts(playbackCanvas_, typeface);
233 }
234 
235 //对应用例 FontMgr_LoadDynamicFont_3011
236 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 11)
237 {
238     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
239     std::string familyName = "abcd";
240 
241     auto emoji_data = MakeData(fontMgr, false);
242     auto data1 = MakeData(fontMgr, true);
243 
244     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
245         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
246     ));
247 
248     DrawTexts(playbackCanvas_, typeface);
249 }
250 
251 //对应用例 FontMgr_LoadDynamicFont_3012
252 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 12)
253 {
254     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
255     std::string familyName = "abcd";
256 
257     auto emoji_data = MakeData(fontMgr, false);
258     auto data1 = MakeData(fontMgr, true);
259 
260     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
261         familyName, nullptr, emoji_data->GetSize()
262     ));
263 
264     DrawTexts(playbackCanvas_, typeface);
265 }
266 
267 //对应用例 FontMgr_LoadDynamicFont_3013
268 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 13)
269 {
270     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
271     std::string familyName = "HMOS Color Emoji";
272 
273     auto emoji_data = MakeData(fontMgr, false);
274     auto data1 = MakeData(fontMgr, true);
275 
276     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
277         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
278     ));
279 
280     DrawTexts(playbackCanvas_, typeface);
281 }
282 
283 //对应用例 FontMgr_LoadDynamicFont_3014
284 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 14)
285 {
286     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
287     std::string familyName = "";
288     fontMgr->GetFamilyName(0, familyName);
289 
290     auto emoji_data = MakeData(fontMgr, false);
291     auto data1 = MakeData(fontMgr, true);
292 
293     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
294         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
295     ));
296 
297     DrawTexts(playbackCanvas_, typeface);
298 }
299 
300 //对应用例 FontMgr_LoadDynamicFont_3015
301 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 15)
302 {
303     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
304     std::string familyName = "abcd";
305 
306     auto emoji_data = MakeData(fontMgr, false);
307     auto data1 = MakeData(fontMgr, true);
308 
309     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
310         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
311     ));
312 
313     DrawTexts(playbackCanvas_, typeface);
314 }
315 
316 //对应用例 FontMgr_LoadDynamicFont_3016
317 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 16)
318 {
319     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
320     std::string familyName = "";
321     fontMgr->GetFamilyName(0, familyName);
322 
323     auto emoji_data = MakeData(fontMgr, false);
324     auto data1 = MakeData(fontMgr, true);
325 
326     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
327         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
328     ));
329 
330     DrawTexts(playbackCanvas_, typeface);
331 }
332 
333 //对应用例 FontMgr_LoadDynamicFont_3017
334 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 17)
335 {
336     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
337     std::string familyName = "abcd";
338 
339     auto emoji_data = MakeData(fontMgr, false);
340     auto data1 = MakeData(fontMgr, true);
341 
342     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
343         familyName, std::move((uint8_t *)data1->GetData()), 0
344     ));
345 
346     DrawTexts(playbackCanvas_, typeface);
347 }
348 
349 //对应用例 FontMgr_LoadDynamicFont_3018
350 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 18)
351 {
352     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
353     std::string familyName = "HMOS Color Emoji";
354 
355     auto emoji_data = MakeData(fontMgr, false);
356     auto data1 = MakeData(fontMgr, true);
357 
358     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
359         familyName, nullptr, 0
360     ));
361 
362     DrawTexts(playbackCanvas_, typeface);
363 }
364 
365 //对应用例 FontMgr_LoadDynamicFont_3019
366 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 19)
367 {
368     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
369     std::string familyName = "";
370 
371     auto emoji_data = MakeData(fontMgr, false);
372     auto data1 = MakeData(fontMgr, true);
373 
374     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
375         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
376     ));
377 
378     DrawTexts(playbackCanvas_, typeface);
379 }
380 
381 //对应用例 FontMgr_LoadDynamicFont_3020
382 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 20)
383 {
384     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
385     std::string familyName = "abcd";
386 
387     auto emoji_data = MakeData(fontMgr, false);
388     auto data1 = MakeData(fontMgr, true);
389 
390     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
391         familyName, nullptr, 0
392     ));
393 
394     DrawTexts(playbackCanvas_, typeface);
395 }
396 
397 //对应用例 FontMgr_LoadDynamicFont_3021
398 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 21)
399 {
400     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
401     std::string familyName = "HMOS Color Emoji";
402 
403     auto emoji_data = MakeData(fontMgr, false);
404     auto data1 = MakeData(fontMgr, true);
405 
406     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
407         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
408     ));
409 
410     DrawTexts(playbackCanvas_, typeface);
411 }
412 
413 //对应用例 FontMgr_LoadDynamicFont_3022
414 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 22)
415 {
416     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
417     std::string familyName = "";
418 
419     auto emoji_data = MakeData(fontMgr, false);
420     auto data1 = MakeData(fontMgr, true);
421 
422     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
423         familyName, nullptr, data1->GetSize()
424     ));
425 
426     DrawTexts(playbackCanvas_, typeface);
427 }
428 
429 //对应用例 FontMgr_LoadDynamicFont_3023
430 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 23)
431 {
432     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
433     std::string familyName = "";
434     fontMgr->GetFamilyName(0, familyName);
435 
436     auto emoji_data = MakeData(fontMgr, false);
437     auto data1 = MakeData(fontMgr, true);
438 
439     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
440         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
441     ));
442 
443     DrawTexts(playbackCanvas_, typeface);
444 }
445 
446 //对应用例 FontMgr_LoadDynamicFont_3024
447 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 24)
448 {
449     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
450     std::string familyName = "";
451     fontMgr->GetFamilyName(0, familyName);
452 
453     auto emoji_data = MakeData(fontMgr, false);
454     auto data1 = MakeData(fontMgr, true);
455 
456     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
457         familyName, std::move((uint8_t *)data1->GetData()), 0
458     ));
459 
460     DrawTexts(playbackCanvas_, typeface);
461 }
462 
463 //对应用例 FontMgr_LoadDynamicFont_3025
464 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 25)
465 {
466     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
467     std::string familyName = "abcd";
468 
469     auto emoji_data = MakeData(fontMgr, false);
470     auto data1 = MakeData(fontMgr, true);
471 
472     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
473         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
474     ));
475 
476     DrawTexts(playbackCanvas_, typeface);
477 }
478 
479 //对应用例 FontMgr_LoadDynamicFont_3026
480 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 26)
481 {
482     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
483     std::string familyName = "HMOS Color Emoji";
484 
485     auto emoji_data = MakeData(fontMgr, false);
486     auto data1 = MakeData(fontMgr, true);
487 
488     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
489         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
490     ));
491 
492     DrawTexts(playbackCanvas_, typeface);
493 }
494 
495 //对应用例 FontMgr_LoadDynamicFont_3027
496 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 27)
497 {
498     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
499     std::string familyName = "abcd";
500 
501     auto emoji_data = MakeData(fontMgr, false);
502     auto data1 = MakeData(fontMgr, true);
503 
504     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
505         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
506     ));
507 
508     DrawTexts(playbackCanvas_, typeface);
509 }
510 
511 //对应用例 FontMgr_LoadDynamicFont_3028
512 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 28)
513 {
514     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
515     std::string familyName = "HMOS Color Emoji";
516 
517     auto emoji_data = MakeData(fontMgr, false);
518     auto data1 = MakeData(fontMgr, true);
519 
520     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
521         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
522     ));
523 
524     DrawTexts(playbackCanvas_, typeface);
525 }
526 
527 //对应用例 FontMgr_LoadDynamicFont_3029
528 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 29)
529 {
530     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
531     std::string familyName = "";
532     fontMgr->GetFamilyName(0, familyName);
533 
534     auto emoji_data = MakeData(fontMgr, false);
535     auto data1 = MakeData(fontMgr, true);
536 
537     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
538         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
539     ));
540 
541     DrawTexts(playbackCanvas_, typeface);
542 }
543 
544 //对应用例 FontMgr_LoadDynamicFont_3030
545 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 30)
546 {
547     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
548     std::string familyName = "";
549 
550     auto emoji_data = MakeData(fontMgr, false);
551     auto data1 = MakeData(fontMgr, true);
552 
553     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
554         familyName, nullptr, emoji_data->GetSize()
555     ));
556 
557     DrawTexts(playbackCanvas_, typeface);
558 }
559 
560 //对应用例 FontMgr_LoadDynamicFont_3031
561 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 31)
562 {
563     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
564     std::string familyName = "";
565     fontMgr->GetFamilyName(0, familyName);
566 
567     auto emoji_data = MakeData(fontMgr, false);
568     auto data1 = MakeData(fontMgr, true);
569 
570     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
571         familyName, nullptr, data1->GetSize()
572     ));
573 
574     DrawTexts(playbackCanvas_, typeface);
575 }
576 
577 //对应用例 FontMgr_LoadDynamicFont_3032
578 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 32)
579 {
580     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
581     std::string familyName = "abcd";
582 
583     auto emoji_data = MakeData(fontMgr, false);
584     auto data1 = MakeData(fontMgr, true);
585 
586     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
587         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
588     ));
589 
590     DrawTexts(playbackCanvas_, typeface);
591 }
592 
593 //对应用例 FontMgr_LoadDynamicFont_3033
594 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 33)
595 {
596     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
597     std::string familyName = "";
598     fontMgr->GetFamilyName(0, familyName);
599 
600     auto emoji_data = MakeData(fontMgr, false);
601     auto data1 = MakeData(fontMgr, true);
602 
603     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
604         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
605     ));
606 
607     DrawTexts(playbackCanvas_, typeface);
608 }
609 
610 //对应用例 FontMgr_LoadDynamicFont_3034
611 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 34)
612 {
613     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
614     std::string familyName = "HMOS Color Emoji";
615 
616     auto emoji_data = MakeData(fontMgr, false);
617     auto data1 = MakeData(fontMgr, true);
618 
619     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
620         familyName, nullptr, emoji_data->GetSize()
621     ));
622 
623     DrawTexts(playbackCanvas_, typeface);
624 }
625 
626 //对应用例 FontMgr_LoadDynamicFont_3035
627 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 35)
628 {
629     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
630     std::string familyName = "";
631 
632     auto emoji_data = MakeData(fontMgr, false);
633     auto data1 = MakeData(fontMgr, true);
634 
635     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
636         familyName, nullptr, 0
637     ));
638 
639     DrawTexts(playbackCanvas_, typeface);
640 }
641 
642 //对应用例 FontMgr_LoadDynamicFont_3036
643 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 36)
644 {
645     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
646     std::string familyName = "abcd";
647 
648     auto emoji_data = MakeData(fontMgr, false);
649     auto data1 = MakeData(fontMgr, true);
650 
651     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
652         familyName, nullptr, 0
653     ));
654 
655     DrawTexts(playbackCanvas_, typeface);
656 }
657 
658 //对应用例 FontMgr_LoadDynamicFont_3037
659 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 37)
660 {
661     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
662     std::string familyName = "";
663 
664     auto emoji_data = MakeData(fontMgr, false);
665     auto data1 = MakeData(fontMgr, true);
666 
667     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
668         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
669     ));
670 
671     DrawTexts(playbackCanvas_, typeface);
672 }
673 
674 //对应用例 FontMgr_LoadDynamicFont_3038
675 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 38)
676 {
677     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
678     std::string familyName = "HMOS Color Emoji";
679 
680     auto emoji_data = MakeData(fontMgr, false);
681     auto data1 = MakeData(fontMgr, true);
682 
683     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
684         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
685     ));
686 
687     DrawTexts(playbackCanvas_, typeface);
688 }
689 
690 //对应用例 FontMgr_LoadDynamicFont_3039
691 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 39)
692 {
693     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
694     std::string familyName = "";
695     fontMgr->GetFamilyName(0, familyName);
696 
697     auto emoji_data = MakeData(fontMgr, false);
698     auto data1 = MakeData(fontMgr, true);
699 
700     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
701         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
702     ));
703 
704     DrawTexts(playbackCanvas_, typeface);
705 }
706 
707 //对应用例 FontMgr_LoadDynamicFont_3040
708 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 40)
709 {
710     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
711     std::string familyName = "HMOS Color Emoji";
712 
713     auto emoji_data = MakeData(fontMgr, false);
714     auto data1 = MakeData(fontMgr, true);
715 
716     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
717         familyName, nullptr, data1->GetSize()
718     ));
719 
720     DrawTexts(playbackCanvas_, typeface);
721 }
722 
723 //对应用例 FontMgr_LoadDynamicFont_3041
724 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 41)
725 {
726     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
727     std::string familyName = "";
728     fontMgr->GetFamilyName(0, familyName);
729 
730     auto emoji_data = MakeData(fontMgr, false);
731     auto data1 = MakeData(fontMgr, true);
732 
733     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
734         familyName, nullptr, 0
735     ));
736 
737     DrawTexts(playbackCanvas_, typeface);
738 }
739 
740 //对应用例 FontMgr_LoadDynamicFont_3042
741 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 42)
742 {
743     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
744     std::string familyName = "";
745 
746     auto emoji_data = MakeData(fontMgr, false);
747     auto data1 = MakeData(fontMgr, true);
748 
749     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
750         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
751     ));
752 
753     DrawTexts(playbackCanvas_, typeface);
754 }
755 
756 //对应用例 FontMgr_LoadDynamicFont_3043
757 DEF_DTK(fontmgr_loaddynamicfont_1, TestLevel::L1, 43)
758 {
759     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
760     std::string familyName = "HMOS Color Emoji";
761 
762     auto emoji_data = MakeData(fontMgr, false);
763     auto data1 = MakeData(fontMgr, true);
764 
765     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
766         familyName, std::move((uint8_t *)data1->GetData()), 0
767     ));
768 
769     DrawTexts(playbackCanvas_, typeface);
770 }
771 
772 //对应用例 FontMgr_LoadDynamicFont_3044
773 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 44)
774 {
775     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
776     std::string familyName = "";
777 
778     auto emoji_data = MakeData(fontMgr, false);
779     auto data1 = MakeData(fontMgr, true);
780 
781     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
782         familyName, std::move((uint8_t *)data1->GetData()), 0
783     ));
784 
785     DrawTexts(playbackCanvas_, typeface);
786 }
787 
788 //对应用例 FontMgr_LoadDynamicFont_3045
789 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 45)
790 {
791     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
792     std::string familyName = "";
793     fontMgr->GetFamilyName(0, familyName);
794 
795     auto emoji_data = MakeData(fontMgr, false);
796     auto data1 = MakeData(fontMgr, true);
797 
798     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
799         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
800     ));
801 
802     DrawTexts(playbackCanvas_, typeface);
803 }
804 
805 //对应用例 FontMgr_LoadDynamicFont_3046
806 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 46)
807 {
808     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
809     std::string familyName = "abcd";
810 
811     auto emoji_data = MakeData(fontMgr, false);
812     auto data1 = MakeData(fontMgr, true);
813 
814     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
815         familyName, nullptr, data1->GetSize()
816     ));
817 
818     DrawTexts(playbackCanvas_, typeface);
819 }
820 
821 //对应用例 FontMgr_LoadDynamicFont_3047
822 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 47)
823 {
824     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
825     std::string familyName = "";
826 
827     auto emoji_data = MakeData(fontMgr, false);
828     auto data1 = MakeData(fontMgr, true);
829 
830     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
831         familyName, nullptr, emoji_data->GetSize()
832     ));
833 
834     DrawTexts(playbackCanvas_, typeface);
835 }
836 
837 //对应用例 FontMgr_LoadDynamicFont_3048
838 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 48)
839 {
840     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
841     std::string familyName = "";
842 
843     auto emoji_data = MakeData(fontMgr, false);
844     auto data1 = MakeData(fontMgr, true);
845 
846     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
847         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
848     ));
849 
850     DrawTexts(playbackCanvas_, typeface);
851 }
852 
853 //对应用例 FontMgr_LoadDynamicFont_3049
854 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 49)
855 {
856     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
857     std::string familyName = "";
858     fontMgr->GetFamilyName(0, familyName);
859 
860     auto emoji_data = MakeData(fontMgr, false);
861     auto data1 = MakeData(fontMgr, true);
862 
863     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
864         familyName, std::move((uint8_t *)data1->GetData()), 0
865     ));
866 
867     DrawTexts(playbackCanvas_, typeface);
868 }
869 
870 //对应用例 FontMgr_LoadDynamicFont_3050
871 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 50)
872 {
873     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
874     std::string familyName = "HMOS Color Emoji";
875 
876     auto emoji_data = MakeData(fontMgr, false);
877     auto data1 = MakeData(fontMgr, true);
878 
879     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
880         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
881     ));
882 
883     DrawTexts(playbackCanvas_, typeface);
884 }
885 
886 //对应用例 FontMgr_LoadDynamicFont_3051
887 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 51)
888 {
889     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
890     std::string familyName = "";
891     fontMgr->GetFamilyName(0, familyName);
892 
893     auto emoji_data = MakeData(fontMgr, false);
894     auto data1 = MakeData(fontMgr, true);
895 
896     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
897         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
898     ));
899 
900     DrawTexts(playbackCanvas_, typeface);
901 }
902 
903 //对应用例 FontMgr_LoadDynamicFont_3052
904 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 52)
905 {
906     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
907     std::string familyName = "";
908 
909     auto emoji_data = MakeData(fontMgr, false);
910     auto data1 = MakeData(fontMgr, true);
911 
912     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
913         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
914     ));
915 
916     DrawTexts(playbackCanvas_, typeface);
917 }
918 
919 //对应用例 FontMgr_LoadDynamicFont_3053
920 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 53)
921 {
922     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
923     std::string familyName = "";
924 
925     auto emoji_data = MakeData(fontMgr, false);
926     auto data1 = MakeData(fontMgr, true);
927 
928     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
929         familyName, nullptr, 0
930     ));
931 
932     DrawTexts(playbackCanvas_, typeface);
933 }
934 
935 //对应用例 FontMgr_LoadDynamicFont_3054
936 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 54)
937 {
938     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
939     std::string familyName = "abcd";
940 
941     auto emoji_data = MakeData(fontMgr, false);
942     auto data1 = MakeData(fontMgr, true);
943 
944     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
945         familyName, nullptr, emoji_data->GetSize()
946     ));
947 
948     DrawTexts(playbackCanvas_, typeface);
949 }
950 
951 //对应用例 FontMgr_LoadDynamicFont_3055
952 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 55)
953 {
954     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
955     std::string familyName = "abcd";
956 
957     auto emoji_data = MakeData(fontMgr, false);
958     auto data1 = MakeData(fontMgr, true);
959 
960     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
961         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
962     ));
963 
964     DrawTexts(playbackCanvas_, typeface);
965 }
966 
967 //对应用例 FontMgr_LoadDynamicFont_3056
968 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 56)
969 {
970     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
971     std::string familyName = "";
972 
973     auto emoji_data = MakeData(fontMgr, false);
974     auto data1 = MakeData(fontMgr, true);
975 
976     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
977         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
978     ));
979 
980     DrawTexts(playbackCanvas_, typeface);
981 }
982 
983 //对应用例 FontMgr_LoadDynamicFont_3057
984 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 57)
985 {
986     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
987     std::string familyName = "HMOS Color Emoji";
988 
989     auto emoji_data = MakeData(fontMgr, false);
990     auto data1 = MakeData(fontMgr, true);
991 
992     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
993         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
994     ));
995 
996     DrawTexts(playbackCanvas_, typeface);
997 }
998 
999 //对应用例 FontMgr_LoadDynamicFont_3058
1000 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 58)
1001 {
1002     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1003     std::string familyName = "HMOS Color Emoji";
1004 
1005     auto emoji_data = MakeData(fontMgr, false);
1006     auto data1 = MakeData(fontMgr, true);
1007 
1008     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1009         familyName, nullptr, data1->GetSize()
1010     ));
1011 
1012     DrawTexts(playbackCanvas_, typeface);
1013 }
1014 
1015 //对应用例 FontMgr_LoadDynamicFont_3059
1016 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 59)
1017 {
1018     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1019     std::string familyName = "";
1020     fontMgr->GetFamilyName(0, familyName);
1021 
1022     auto emoji_data = MakeData(fontMgr, false);
1023     auto data1 = MakeData(fontMgr, true);
1024 
1025     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1026         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
1027     ));
1028 
1029     DrawTexts(playbackCanvas_, typeface);
1030 }
1031 
1032 //对应用例 FontMgr_LoadDynamicFont_3060
1033 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 60)
1034 {
1035     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1036     std::string familyName = "HMOS Color Emoji";
1037 
1038     auto emoji_data = MakeData(fontMgr, false);
1039     auto data1 = MakeData(fontMgr, true);
1040 
1041     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1042         familyName, std::move((uint8_t *)emoji_data->GetData()), 0
1043     ));
1044 
1045     DrawTexts(playbackCanvas_, typeface);
1046 }
1047 
1048 //对应用例 FontMgr_LoadDynamicFont_3061
1049 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 61)
1050 {
1051     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1052     std::string familyName = "HMOS Color Emoji";
1053 
1054     auto emoji_data = MakeData(fontMgr, false);
1055     auto data1 = MakeData(fontMgr, true);
1056 
1057     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1058         familyName, nullptr, emoji_data->GetSize()
1059     ));
1060 
1061     DrawTexts(playbackCanvas_, typeface);
1062 }
1063 
1064 //对应用例 FontMgr_LoadDynamicFont_3062
1065 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 62)
1066 {
1067     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1068     std::string familyName = "abcd";
1069 
1070     auto emoji_data = MakeData(fontMgr, false);
1071     auto data1 = MakeData(fontMgr, true);
1072 
1073     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1074         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
1075     ));
1076 
1077     DrawTexts(playbackCanvas_, typeface);
1078 }
1079 
1080 //对应用例 FontMgr_LoadDynamicFont_3063
1081 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 63)
1082 {
1083     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1084     std::string familyName = "";
1085     fontMgr->GetFamilyName(0, familyName);
1086 
1087     auto emoji_data = MakeData(fontMgr, false);
1088     auto data1 = MakeData(fontMgr, true);
1089 
1090     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1091         familyName, nullptr, emoji_data->GetSize()
1092     ));
1093 
1094     DrawTexts(playbackCanvas_, typeface);
1095 }
1096 
1097 //对应用例 FontMgr_LoadDynamicFont_3064
1098 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 64)
1099 {
1100     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1101     std::string familyName = "";
1102     fontMgr->GetFamilyName(0, familyName);
1103 
1104     auto emoji_data = MakeData(fontMgr, false);
1105     auto data1 = MakeData(fontMgr, true);
1106 
1107     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1108         familyName, nullptr, data1->GetSize()
1109     ));
1110 
1111     DrawTexts(playbackCanvas_, typeface);
1112 }
1113 
1114 //对应用例 FontMgr_LoadDynamicFont_3065
1115 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 65)
1116 {
1117     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1118     std::string familyName = "HMOS Color Emoji";
1119 
1120     auto emoji_data = MakeData(fontMgr, false);
1121     auto data1 = MakeData(fontMgr, true);
1122 
1123     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1124         familyName, std::move((uint8_t *)data1->GetData()), emoji_data->GetSize()
1125     ));
1126 
1127     DrawTexts(playbackCanvas_, typeface);
1128 }
1129 
1130 //对应用例 FontMgr_LoadDynamicFont_3066
1131 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 66)
1132 {
1133     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1134     std::string familyName = "";
1135 
1136     auto emoji_data = MakeData(fontMgr, false);
1137     auto data1 = MakeData(fontMgr, true);
1138 
1139     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1140         familyName, std::move((uint8_t *)emoji_data->GetData()), emoji_data->GetSize()
1141     ));
1142 
1143     DrawTexts(playbackCanvas_, typeface);
1144 }
1145 
1146 //对应用例 FontMgr_LoadDynamicFont_3067
1147 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 67)
1148 {
1149     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1150     std::string familyName = "";
1151     fontMgr->GetFamilyName(0, familyName);
1152 
1153     auto emoji_data = MakeData(fontMgr, false);
1154     auto data1 = MakeData(fontMgr, true);
1155 
1156     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1157         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
1158     ));
1159 
1160     DrawTexts(playbackCanvas_, typeface);
1161 }
1162 
1163 //对应用例 FontMgr_LoadDynamicFont_3068
1164 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 68)
1165 {
1166     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1167     std::string familyName = "HMOS Color Emoji";
1168 
1169     auto emoji_data = MakeData(fontMgr, false);
1170     auto data1 = MakeData(fontMgr, true);
1171 
1172     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1173         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
1174     ));
1175 
1176     DrawTexts(playbackCanvas_, typeface);
1177 }
1178 
1179 //对应用例 FontMgr_LoadDynamicFont_3069
1180 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 69)
1181 {
1182     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1183     std::string familyName = "";
1184     fontMgr->GetFamilyName(0, familyName);
1185 
1186     auto emoji_data = MakeData(fontMgr, false);
1187     auto data1 = MakeData(fontMgr, true);
1188 
1189     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1190         familyName, nullptr, emoji_data->GetSize()
1191     ));
1192 
1193     DrawTexts(playbackCanvas_, typeface);
1194 }
1195 
1196 //对应用例 FontMgr_LoadDynamicFont_3070
1197 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 70)
1198 {
1199     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1200     std::string familyName = "abcd";
1201 
1202     auto emoji_data = MakeData(fontMgr, false);
1203     auto data1 = MakeData(fontMgr, true);
1204 
1205     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1206         familyName, std::move((uint8_t *)emoji_data->GetData()), data1->GetSize()
1207     ));
1208 
1209     DrawTexts(playbackCanvas_, typeface);
1210 }
1211 
1212 //对应用例 FontMgr_LoadDynamicFont_3071
1213 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 71)
1214 {
1215     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDynamicFontMgr());
1216     std::string familyName = "";
1217     fontMgr->GetFamilyName(0, familyName);
1218 
1219     auto emoji_data = MakeData(fontMgr, false);
1220     auto data1 = MakeData(fontMgr, true);
1221 
1222     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1223         familyName, nullptr, 0
1224     ));
1225 
1226     DrawTexts(playbackCanvas_, typeface);
1227 }
1228 
1229 //对应用例 FontMgr_LoadDynamicFont_3072
1230 DEF_DTK(fontmgr_loaddynamicfont_2, TestLevel::L1, 72)
1231 {
1232     std::shared_ptr<Drawing::FontMgr> fontMgr(Drawing::FontMgr::CreateDefaultFontMgr());
1233     std::string familyName = "";
1234 
1235     auto emoji_data = MakeData(fontMgr, false);
1236     auto data1 = MakeData(fontMgr, true);
1237 
1238     auto typeface = std::shared_ptr<Drawing::Typeface>(fontMgr->LoadDynamicFont(
1239         familyName, std::move((uint8_t *)data1->GetData()), data1->GetSize()
1240     ));
1241 
1242     DrawTexts(playbackCanvas_, typeface);
1243 }
1244 
1245 }
1246 }
1247