作者lovelycateye (我还想要更多力量)
看板AndroidDev
标题Re: [问题] 图片叠加 移动存档
时间Fri Nov 2 14:30:02 2012
※ 引述《Ferich (纯粹的透明)》之铭言:
: 在看过line相机的强大功能後
: 目前正在尝试看能否把line相机的图案添加 弄出来
: 前一篇文 使用了版众们提供的startActivityForResult
: 方法後 成功解决了相机用surface变形的问题
: 使用了原生相机 拍完照後 把照片拿回来使用的部分
: 目前想用canvas的方式来实作
: 可以把图片 使用button 就指定他放到座标位置上去
: 但是有大大实作过 在canvas上 拖拉图片 改变位置
: 甚至改变透明度与角度 放大缩小吗?
: 还是其实line相机 不是用canvas做的
: 有参考许多文章 都说canvas很复杂... 但是看起来 似乎只有canvas可以解决问题
: 总之功能大概想像是line相机 这样的功能
LineCamera用什麽实作我是不清楚啦,没去解开看。
如果在Java层实作我只能提供我目前的方向,或许你会有更好的作法 :p
我是用和Photoshop的图层概念去实作,
图层本身有自己的位置、旋转角度、缩放比例,当然甚至透明度你要有也可以。
然後等到SurfaceView要画的时候,SurfaceHolder的lockCanvas会把Canvas传进来
这时就用Canvas的drawBitmap画上去,图片旋转缩放翻转等等全部都可以用Matrix算。
让他一层一层根据图层本身的状态画上去。
我是没有像LineCamera是用小图去放大,而是用原寸图即时读档去decode。
因此在效能上比较慢,要一直读档,或许之後会加上LruCache加快一点效能。
总之整个概念大致上是这样。
再说下去大概就会被发现哪个App是我做的了(遮脸)
--
抱最大的希望,为最大的努力,做最坏的打算。 严长寿
领最大的薪水,拥最大的权势,做最坏的榜样。 立法院
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.99.182.229
※ 编辑: lovelycateye 来自: 118.99.182.229 (11/02 14:31)
※ 编辑: lovelycateye 来自: 219.85.82.103 (11/02 23:24)