在Cocos2d JS中,我们可以使用LabelTTF
创建标签,并为其添加字体。
我们如何创建混合字体标签,例如“此是我的名称”。
1。)我应该能够改变文本的颜色,字体和大小。 objective-c中的等价物是NSAttributedString。
2.)或者,我们可以在cocos2d-js中显示html文本。
由于
答案 0 :(得分:1)
v4的作品中有类似的功能,但目前还没有简单的方法。
您必须创建自己的类,在内部保留多个LabelTTF
,每个部分使用不同格式的文本,并在所需的空间内对其进行正确排序。
答案 1 :(得分:1)
它被称为richtext。
这是示例代码:
var richText = new ccui.RichText();
var text1 = new ccui.RichElementText(1, cc.color.RED, 255, "HELLO", "Arial", 25);
var text2 = new ccui.RichElementText(1, cc.color.GREEN, 255, "HELLO", "Arial", 35);
richText.pushBackElement(text1);
richText.pushBackElement(text2);
richText.setPosition(cc.p(200,200));
this.addChild(richText);
查看here
答案 2 :(得分:0)
以下是我对第二个问题的回答:
基本上,您在输出屏幕中看到的内容来自HTML文件。其中有一个元素可以看到我们的cocos2dJS输出。所以,我的想法是...... 您可以使用不同的ID名称创建标签或div。风格必须如下:
idName{display: none; position: fixed;}
一旦您需要显示div或标签,您可以通过以下代码访问它并在屏幕上显示:
document.getElementById('idName').style.display = 'block';
如果您想将其放置在正确的位置,请使用以下代码:
document.getElementById('idName').style.top = cc.winSize.height/2;//This value can be as you wanted to display.
document.getElementById('idName').style.left = cc.winSize.width/2;//This value can be as you wanted to display.
现在这就是完整的场景。你完成了它。 :)
答案 3 :(得分:0)
我想你会需要这个链接: https://docs.cocos2d-x.org/api-ref/js/V2.2/symbols/cc.LabelTTF.html
这是来自 cocos2d-x 的文档,下面是一个示例:
var lbCoin = new cc.LabelTTF( '123.456.789', /* content */
'Arial', /* font family */
24, /* font size */
cc.size(0, 0), /* position */
cc.TEXT_ALIGNMENT_LEFT); /* alignment */
lbCoin.attr({
x: cc.winSize.width / 2,
y: cc.winSize.height / 2
});
lbCoin.zIndex = 2005;
lbCoin.color = cc.color(250, 221, 149);
// or you can use lbCoin.setColor(cc.color(250, 221, 149));
this.addChild(this.lbCoin);