package Ġfeature a . font . content . samples Ċ Ċ import Ġfeature a . layout . Camera Ċ import Ġfeature a . app . Screen Ċ import Ġfeature a . app . Layer Ċ import Ġfeature a . utils . Colors Ċ import Ġfeature a . utils . Colors . yellow green Ċ import Ġfeature a . res . Bundle Ċ import Ġfeature a . res . Asset NotFoundException Ċ import Ġfeature a . font . Font Content Provider Ċ import Ġfeature a . font . content . Font Ċ import Ġfeature a . font . content . Glyph Layout Ċ import Ġfeature a . font . content . Horizontal Align . CENTER Ċ import Ġfeature a . font . content . Vertical Align . WRAP Ċ import Ġfeature a . font . content . samples . Content . arial 1 6 Font Ċ import Ġfeature a . opengl . Graphics Ċ import Ġfeature a . runtime . Service Ċ import Ġfeature a . runtime . Module Ċ import Ġfeature a . runtime . create Ċ import Ġfeature a . runtime . import Ċ import Ġfeature a . graphics . Texture Batch Ċ import Ġkotlinx . coroutines . Global Scope Ċ import Ġkotlinx . coroutines . launch Ċ import Ġfeature a . content . load Content Ċ Ċ const Ġval ĠF AB Ġ= Ġ"/ Users / d mit ry ko les nik ov ich / workspace / wheel sin space / platform / plugins / font - bundle - plugin / samples / font - bundle - plugin - samples / src / main / resources / test Font Bundle . fab " Ċ Ċ fun Ġlaunch () Ġ= ĠApplication Context Ġ{ ĊĠĠĠ ĠGlobal Scope . launch Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontent Ġ= Ġimport < Content >() ĊĠĠĠĠĠĠĠ Ġval Ġsystem Ġ= Ġimport < System >() ĊĠĠĠĠĠĠĠ Ġsystem . working Dir Ġ= ĠF AB ĊĠĠĠĠĠĠĠ Ġload Content ( content . resources ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Ġ= ĠScreen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayers . add ( My Layer ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠSample 3 Layer ( module : ĠModule ) Ġ: ĠLayer ( module ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtext : ĠString Ġ= Ġ" abc Ġdef g Ġh ijkl Ġm nop qr Ġst uv x wz " ĊĠĠĠ Ġprivate Ġval Ġcapacity : ĠInt Ġ= Ġtext . length ĊĠĠĠ Ġprivate Ġval Ġcamera Ġ= ĠCamera Ġ{ Ġsize . assign ( 3 0 0 f , Ġ 3 0 0 f ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġtexture Batch Ġ= ĠTexture Batch Ġ{ Ġcoordinates Ġ= Ġcamera . coordinates Ġ} ĊĠĠĠ Ġprivate Ġval Ġfont Asset Loader Ġ= Ġimport < Font Content Provider >() ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġglyph Layout : ĠGlyph Layout ĊĠĠĠ Ġlateinit Ġvar Ġfont : ĠFont ĊĠĠĠ Ġprivate Ġval Ġgraphics Ġ= Ġimport < Graphics >() ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Component () Ġ{ ĊĠĠĠĠĠĠĠ Ġtexture Batch . capacity Ġ= Ġcapacity ĊĠĠĠĠĠĠĠ Ġfont Ġ= Ġfont Asset Loader . font Cache [ arial 1 6 Font ] Ġ?: Ġthrow ĠAsset NotFoundException ( arial 1 6 Font ) ĊĠĠĠĠĠĠĠ Ġglyph Layout Ġ= ĠGlyph Layout () ĊĠĠĠĠĠĠĠ Ġglyph Layout . font Ġ= Ġfont ĊĠĠĠĠĠĠĠ Ġglyph Layout . horizontal Align Ġ= ĠC ENTER ĊĠĠĠĠĠĠĠ Ġglyph Layout . vertical Align Ġ= ĠWR AP ĊĠĠĠĠĠĠĠ Ġglyph Layout . bounds . assign ( 3 0 f , Ġ 0 f , Ġ 6 5 f , Ġ 3 0 0 f ) ĊĠĠĠĠĠĠĠ Ġglyph Layout . update ( text ) ĊĠĠĠĠĠĠĠ Ġtexture Batch . init Texture ( font . texture Path ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun ĠonUpdate Screen () Ġ{ ĊĠĠĠĠĠĠĠ Ġgraphics . clear ( yellow green ) ĊĠĠĠĠĠĠĠ Ġgraphics . use ( camera ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgraphics . clear ( Colors . black ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( texture Batch . is Dirty ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( line Ġin Ġglyph Layout . lines ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( glyph Vertex Ġin Ġline . glyph Vertices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwith ( glyph Vertex ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtexture Batch . draw Texture ( x 1 , Ġy 1 , Ġx 2 , Ġy 2 , Ġu 1 , Ġv 1 , Ġu 2 , Ġv 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtexture Batch . flush () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Invalidate Layout () Ġ{ ĊĠĠĠĠĠĠĠ Ġcamera . invalidate Layout () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Invalidate Graphics () Ġ{ ĊĠĠĠĠĠĠĠ Ġtexture Batch . clear () ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ // Ġconstructor Ċ private Ġfun ĠComponent . My Layer ( init : ĠSample 3 Layer . () Ġ-> ĠUnit Ġ= Ġ{}) Ġ= Ġcreate ( init ) Ċ