lufy's legend

标题: LBitmapData.DATA_CANVAS和LBitmapData.DATA_IMAGE的区别 [打印本页]

作者: ohufei    时间: 2015-6-17 09:42
标题: LBitmapData.DATA_CANVAS和LBitmapData.DATA_IMAGE的区别
老大,LBitmapData.DATA_CANVAS和LBitmapData.DATA_IMAGE的区别到底是什么?看API讲的不是十分清楚,他俩具体各自是什么样的数据形式?使用上区别在什么地方?

作者: lufy    时间: 2015-6-17 11:48
看名字就差不多知道了吧,DATA_CANVAS就是Canvas,DATA_IMAGE就是Image
纯显示的话,DATA_IMAGE效率略高,所以LBitmapData默认是DATA_IMAGE类型
但是,从操作来说DATA_CANVAS效率则要高得多
一般API中没有指明用什么的时候,直接用DATA_IMAGE就行了,因为显示效率高一些,需要使用DATA_CANVAS的时候,API中都有强调
如果想了解的更详细一点儿,只能看源码了,反正是开源的
作者: ohufei    时间: 2015-6-17 14:06
嗯 我还得深入研究
作者: 倬彼昊天    时间: 2017-5-17 20:54
lufy 发表于 2015-6-17 11:48
看名字就差不多知道了吧,DATA_CANVAS就是Canvas,DATA_IMAGE就是Image
纯显示的话,DATA_IMAGE效率略高, ...

请问那里的canvas,是引入的静态图片性质的,还是那种js可以通过DOM获取的canvas。之前用canvas和纯js写的一些东西,现在发现再用lufylegend的实现不会了,像直接引入那个canvas到一个图层。
作者: lufy    时间: 2017-5-18 11:19
倬彼昊天 发表于 2017-5-17 20:54
请问那里的canvas,是引入的静态图片性质的,还是那种js可以通过DOM获取的canvas。之前用canvas和纯js写 ...

新建LBitmapData的时候,把你的那个canvas作为LBitmapData的第一个参数传进去就可以了
作者: 倬彼昊天    时间: 2017-5-18 20:25
lufy 发表于 2017-5-18 11:19
新建LBitmapData的时候,把你的那个canvas作为LBitmapData的第一个参数传进去就可以了 ...


之前的那个canvas会和图层里的重复显示。前面的canvas是类似于消消乐的。canvas标签在html里面删掉不可行,设置display : none之后LBitmapData里面的canvas也就不见了。
后面是我的demo,index_2是和index一样的canvas,还是不知道具体把canvas放到LBitmapData是什么样的。
http://zhuobihaotian.top/demo/index_2.html
http://zhuobihaotian.top/demo/index.html
作者: 倬彼昊天    时间: 2017-5-18 20:54
lufy 发表于 2017-5-18 11:19
新建LBitmapData的时候,把你的那个canvas作为LBitmapData的第一个参数传进去就可以了 ...

还有一个问题,不确定是不是和引擎相关,lufylegend运行时生成的canvas可以在IE/9/10/11上面运行,手机UC上也没有问题,而我的在上述浏览器测试自己写的canvas就一片空白。想问一下lufylegedn游戏引擎,是如何做的适配。
作者: lufy    时间: 2017-5-19 08:57
倬彼昊天 发表于 2017-5-18 20:25
之前的那个canvas会和图层里的重复显示。前面的canvas是类似于消消乐的。canvas标签在html里面删掉不可 ...

不需要显示的canvas用document.createElement("canvas");来创建,不添加到HTML中它是不会显示的
作者: lufy    时间: 2017-5-19 08:58
倬彼昊天 发表于 2017-5-18 20:54
还有一个问题,不确定是不是和引擎相关,lufylegend运行时生成的canvas可以在IE/9/10/11上面运行,手机UC ...

这个问题不好回答,具体问题具体分析
引擎是完全开源的,你可以参考下源码




欢迎光临 lufy's legend (http://lufylegend.com/forum/) Powered by Discuz! X2.5