самое главное исправил все глюки с отображением текста ! вобще пол системы GUIText переписал ) зато теперь текст рисуется мего четко и как надо ))) итак онотолле пришло время сказать что я доволен шрифтами !
итак начнемс
создаем текстуру заданного размера ( 0-8192*8192)
далее создаем шрифты ( но всегда есть базовый шрифт он создается автоматически ) например так
[gui createFont:"../Fonts/tahoma.ttf" fontSize:8 fontName:@"tahomaCur"];
[gui createFont:"../tahoma.ttf" fontSize:11 fontName:@"tahoma1Cur"];
[gui createFont:"../tahoma.ttf" fontSize:14 fontName:@"tahoma2Cur"];
[gui createFont:"../tahoma.ttf" fontSize:16 fontName:@"tahoma3Cur"];
[gui createFont:"../tahoma.ttf" fontSize:20 fontName:@"tahoma4Cur"];
[gui createFont:"../tahoma.ttf" fontSize:10 fontName:@"tahoma5Cur"];
[gui createFont:"../tahoma.ttf" fontSize:12 fontName:@"tahoma6Cur"];
[gui createFont:"../tahoma.ttf" fontSize:24 fontName:@"tahoma7Cur"];
[gui createFont:"../tahoma.ttf" fontSize:16 fontName:@"tahoma8Cur"];
[gui createFont:"../tahoma.ttf" fontSize:40 fontName:@"tahoma9Cur"];
[gui createFont:"../tahoma.ttf" fontSize:12 fontName:@"tahoma0Cur"];
и получим вот такую текстурку шрифта
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpKuRi1V_WLjwQB71eCqBZzTAdMDfSFJukFq6CfIba1xDIu0O_ujt_gAIKWK3xxQVE2mGDJBjn_HHTyF6ND7iHtsqcl0mXGwoqS2dSoO1tpLlzYFXghgwVc8tBcA2Hk9CnCiYJhYniV0QT/s320/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA+%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0+2010-03-17+%D0%B2+3.56.48.png)
нажми для увеличения
как видно из скрина, шрифты ложатся ровно и не важно в какой последовательности добавлены, всегда складываются экономя место в текстуре !
ну а теперь можно спокойно создать текстовое поле с любым шрифтом например так
Text*stringTest = [[Text alloc] init];
stringTest.width = 300;
stringTest.height = 50;
stringTest.x = 10;
stringTest.fontName = @"tahoma7Cur";
stringTest.color = 0xffffff;
stringTest.text = @"iArt Онотолле в аттаке ррр 1адин";
[settingOverlay addChild:stringTest];
и увидим
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_s-HGLwCh7bISQYqmKKoEawPG2L-NkFb1PcxvInfo57KBZAp1HKpuqytmpC1hCLE8-oFKg6G-46N3E3LIpLf1j2=s0-d)
едем дальше подписываем на клик от мыши данное текстовое поле
[stringTest addEventListener:Event.MouseClick method:getMethod(self,@"changeFont:")];
и
-(void)changeFont:(MouseEvent)event
{
Text*target = event.target;
if (funText) {
target.color = 0x00ff00;
target.fontName = @"tahoma9Cur";
target.width = 900;
}else
{
target.color = 0xf0ff0f;
target.fontName = @"baseFont";
target.width = 300;
}
target.x+=50;
funText=!funText;
}
теперь при клике на него мы будем менять цвет/размер/шрифт
например при первом клике увидим
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_tQ3lvDNaa_wPvmymwAt1oOzLzBissP64WvRJuHHZsNSdpFARS43wqkwBzWfSNZstC2DaoIQtodiPOdtgEbLErq=s0-d)
а при следующем клике
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_uA4QgPZorUrcvbE6hzA3O1ryp6EuVkJWHBvBnpWzWejIQhpLhSH96k0w5kjKFUPdiPhhIwpRpzEShJv_75tGry=s0-d)
нажми для увеличения
ну и напоследок шрифтик из аватара
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_scneTaSNAP0x0qh_ucchEe-7mkmBlTF8wpSRJumMDmNXKDsoCQ1qsdYn8RTbNu5Ygv_pDfTl1CRM529F3bGr1W=s0-d)
2014
а вот что то будет полезно и сейчас )
итак начнемс
создаем текстуру заданного размера ( 0-8192*8192)
далее создаем шрифты ( но всегда есть базовый шрифт он создается автоматически ) например так
[gui createFont:"../Fonts/tahoma.ttf" fontSize:8 fontName:@"tahomaCur"];
[gui createFont:"../tahoma.ttf" fontSize:11 fontName:@"tahoma1Cur"];
[gui createFont:"../tahoma.ttf" fontSize:14 fontName:@"tahoma2Cur"];
[gui createFont:"../tahoma.ttf" fontSize:16 fontName:@"tahoma3Cur"];
[gui createFont:"../tahoma.ttf" fontSize:20 fontName:@"tahoma4Cur"];
[gui createFont:"../tahoma.ttf" fontSize:10 fontName:@"tahoma5Cur"];
[gui createFont:"../tahoma.ttf" fontSize:12 fontName:@"tahoma6Cur"];
[gui createFont:"../tahoma.ttf" fontSize:24 fontName:@"tahoma7Cur"];
[gui createFont:"../tahoma.ttf" fontSize:16 fontName:@"tahoma8Cur"];
[gui createFont:"../tahoma.ttf" fontSize:40 fontName:@"tahoma9Cur"];
[gui createFont:"../tahoma.ttf" fontSize:12 fontName:@"tahoma0Cur"];
и получим вот такую текстурку шрифта
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpKuRi1V_WLjwQB71eCqBZzTAdMDfSFJukFq6CfIba1xDIu0O_ujt_gAIKWK3xxQVE2mGDJBjn_HHTyF6ND7iHtsqcl0mXGwoqS2dSoO1tpLlzYFXghgwVc8tBcA2Hk9CnCiYJhYniV0QT/s320/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA+%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0+2010-03-17+%D0%B2+3.56.48.png)
нажми для увеличения
как видно из скрина, шрифты ложатся ровно и не важно в какой последовательности добавлены, всегда складываются экономя место в текстуре !
ну а теперь можно спокойно создать текстовое поле с любым шрифтом например так
Text*stringTest = [[Text alloc] init];
stringTest.width = 300;
stringTest.height = 50;
stringTest.x = 10;
stringTest.fontName = @"tahoma7Cur";
stringTest.color = 0xffffff;
stringTest.text = @"iArt Онотолле в аттаке ррр 1адин";
[settingOverlay addChild:stringTest];
и увидим
едем дальше подписываем на клик от мыши данное текстовое поле
[stringTest addEventListener:Event.MouseClick method:getMethod(self,@"changeFont:")];
и
-(void)changeFont:(MouseEvent)event
{
Text*target = event.target;
if (funText) {
target.color = 0x00ff00;
target.fontName = @"tahoma9Cur";
target.width = 900;
}else
{
target.color = 0xf0ff0f;
target.fontName = @"baseFont";
target.width = 300;
}
target.x+=50;
funText=!funText;
}
теперь при клике на него мы будем менять цвет/размер/шрифт
например при первом клике увидим
а при следующем клике
нажми для увеличения
ну и напоследок шрифтик из аватара
2014
а вот что то будет полезно и сейчас )
Ништяк, когда уже,балин, сделаешь материалы????? : )
ОтветитьУдалить