[转载]简易版 html5 撕掉mm的衣服 - blue_lg - 博客园

mikel阅读(1189)

[转载]简易版 html5 撕掉mm的衣服 – blue_lg – 博客园.

昨天在csdn闲逛的时候,看到了http://blog.csdn.net/cuixiping/article/details/7161808这篇文章,便尝试着自己写一个玩玩,顺便贴上写注释。

html:


撕掉mm的衣服

<script src="draw.js"></script>
<p style="color: yellow;">点击就可以尝试下面的效果了</p>

<div><canvas id="canvas" width="480" height="320">很抱歉,是时候更换浏览器了<a href="http://firefox.com.cn/download/">点击下载firefox</a></canvas></div>

css代码的实现的效果:使得canvas元素居中显示,且周围为“关灯”效果,凸显出图片

 

draw.js

var ready,canvas,context;
var load;
var BRUSH_SIZE=18;//BRUSH_SIZE指的是鼠标表示的画刷,"橡皮擦"的大小
var img =new Image();
var cimg =new Image();

window.onload=function(){
if(!document.getElementById("canvas").getContext){//若浏览器不支持canvas,则返回
return;
}
canvas= document.getElementById("canvas");//获取canvas元素
context = canvas.getContext('2d');//获取canvas画布
loading();
pics =['images/a1.jpg','images/a2.jpg'];//图片数组,pics[0]为当前图片,pics[1]为替换后的图片
load=0;//初始化标志两幅图片加载次数的变量
cimg.onload = img.onload = function (){
if(++load==2){//表明两幅图均加载完成
initCoverImage();
}
}
cimg.onerror = img.onerror = function (){//有图像加载过程中发生错误
context.clearRect(0,0,canvas.width,canvas.height);
context.font = '12px sans-serif';//显示字体格式
context.fillStyle = '#00ff00';
context.textAlign = 'center';
context.fillText('Load images failure!', canvas.width&gt;&gt;1, canvas.height-50);//其中canvas&gt;&gt;1典型的右移运算,即除以2
}
//上述所有事件设置完成后,设置图片的src
cimg.src = pics[0];
img.src = pics[1];
}

function loading(){//设置及显示
context.clearRect(0,0,canvas.width,canvas.height);//清空canvas窗口
context.fillText('Loading...', canvas.width&gt;&gt;1, canvas.height-50);//若图片获取较慢,会显示loading...
}

function initCoverImage(){//绘制当前图像
canvas.width = cimg.width;//调整canvas大小,符合真实图片
canvas.height = cimg.height;
context.drawImage(cimg, 0, 0, canvas.width, canvas.height);
bindEvents();//绑定事件
}

function bindEvents(){
canvas.ontouchstart = canvas.onmousedown = function(e) { ready = true; };//鼠标摁下
canvas.ontouchend = canvas.ontouchcancel = canvas.onmouseup = canvas.onmouseout = (function(e) { ready = false; });//鼠标未摁下
canvas.ontouchmove = canvas.onmousemove = updateCanvas;//相应鼠标的移动事件
}

function updateCanvas(e){
if(!ready) {//鼠标未摁下
return;
}
var r = canvas.getBoundingClientRect();//获取当前canvas区域的坐标
var vx = e.clientX - r.left;//横向距离
var vy = e.clientY - r.top;//纵向距离

var bs = BRUSH_SIZE;
var bsr = bs/2;

if ( vx &lt; bsr || vy &lt; bsr) {//据canvas边缘太近,则指定此时"擦拭"无效
return;
}
context.rect(vx-bsr, vy-bsr, bs, bs);//否则圈定当前一块区域方便被"替换"为下一幅图的相同区域
context.drawImage(img, vx-bsr, vy-bsr, bs, bs, vx-bsr, vy-bsr, bs, bs);//替换
}

上面的这个是利用drawImage来覆盖图片的形式完成脱衣过程,也可以用IplImage图像矩阵来替换,原理是一样的。

这个,大家可以自己尝试。

(由于实在是搞不到那些mm的图片,就用自己的照片做个示范,演示下效果^-^)

images/a1.jpg

images/a2.jpg

最终效果:

转载请注明:http://www.cnblogs.com/blue-lg/archive/2011/12/30/2307649.html

[转载]HTML5游戏:《撕掉MM的衣服》 - 无心的专栏 - 博客频道 - CSDN.NET

mikel阅读(1047)

[转载]HTML5游戏:《撕掉MM的衣服》 – 无心的专栏 – 博客频道 – CSDN.NET.游戏99.9%都是程序猿写的,为什么玩游戏的人99.9%都不是程序猿?

有人说,咱是操着卖白粉的心,挣着卖白菜的钱!!!
有人说,每个IT产品和应用背后都是无数程序猿的血与泪!!
有人说,每个程序猿上辈子都是折了护翼的卫生巾!!!

程序猿,伤不起!!!

弄了个让亲们放松的HTML5小游戏,献给程序猿,献给前端攻城师。

这游戏在手机上很风靡,flash版的也有,HTML5版的现在也来了。

撕边的图形算法目前比较差,没时间改进了。

轻轻敲击这里立即体验   (海外服务器,如果载入较慢,请耐心。)

代码没有压缩,没有混淆,要源码的亲们自己看。CSDN的下载太难用了。

这个游戏,不管是写,还是玩,都很简单,难的是找图片素材。
有丰富素材的亲们,欢迎共享。

推广资源用时方恨少

mikel阅读(967)

已经代理了科涵的行车记录仪,大家都在做,怎么做?王通已经给了大家思路,只需要狠狠执行。

说道论坛发帖,惯性思维是找大的汽车论坛,可哪些论坛算流量大,用户又精准呢?

这就是资源,没有资源你只有辛苦的去百度,去收集,如果平时有积累,有收藏,那就不至于现在捉襟见肘,可见资源才是你的竞争力,时间上你就快人一步,机会也就多了一分。

先发布下我收集来的论坛分享给大家,反正资源就在那只是获取早晚的事儿,藏着掖着不如共享共赢,发挥作用

新浪汽车 auto.sina.com.cn

汽车之家 www.autohome.com.cn

腾讯汽车 auto.qq.com

易车网 www.bitauto.com

网易汽车 auto.163.com

爱卡汽车 www.xcar.com.cn

搜狐汽车 auto.sohu.com

网上车市 www.cheshi.com

太平洋汽车网 www.pcauto.com.cn

车天下 www.chetx.com

凤凰汽车 auto.ifeng.com

万车网 www.webcars.com.cn

中国汽车网 www.chinacars.com

MSN汽车 auto.msn.com.cn

21CN汽车 auto.21cn.com

车主之家 www.16888.com

新民网汽车 auto.xinmin.cn

汽车点评网 www.xgo.com.cn

爱意汽车 www.ieche.com

亚迅车网 www.yescar.cn

中国汽车消费网 www.315che.com

汽车天地 www.autoday.com.cn

中国买车网 www.buycarcn.com

汽车江湖 www.qc188.com

我爱车网 www.52che.com

大旗汽车 auto.daqi.com

半岛汽车网 auto.bandao.cn

中国汽车品牌网 www.at160.com

车讯网 www.carxoo.com

车城网 www.autocity.com.cn

中华网汽车 auto.china.com

汽车天地 www.autoday.com.cn

购车网 www.gocar.cn

人民网汽车 auto.people.com.cn

和讯汽车 auto.hexun.com

汽车族网 www.motortrend.com.cn

TOM汽车 auto.tom.com

第一车网 www.iautos.cn

爱驾网 www.ijia360.com

汽车中国 carschina.com

猫扑汽车频道 auto.mop.com

汽车点评网 www.xgo.com.cn

汽车探索 www.feelcars.com

中国汽车交易网 www.auto18.com

中国名车网 www.chinaauto.com.cn

汽车生活网 www.autov.com.cn

好车网 www.goodcar.cn

合肥汽车网 qiche.hefei.cc

新车评网 www.xincheping.com SUV

汽车网 www.cnsuv.com

CN汽车网 www.cnnauto.com

汽车殿堂 www.car136.com

VIP www.chevip.com.cn

卓众汽车网 www.uncars.com.cn

汽车宝典 www.52carcare.com

汽车世界 www.autoworld.com.cn

新锐车网 www.chelink.com

慧眼看车 www.yanglihui.com

车之旅 www.chezhilv.cn

湘车网 www.xiangauto.com

有车一族汽车网 www.020h.com

汽车口碑网 www.chekb.com

汽车用品网 www.qcypnet.com.cn

车品汇 www.chepinhui.com

中国汽车内饰商城 www.whtb88.com

车友淘客 www.sd100e.cn

雅森车品网 www.yasn.com

其他论坛:

汽车之家、太平洋汽车、爱卡汽车、网易汽车、搜狐汽车、易车网、车讯网、58同城、赶集网、百姓网、百度贴吧、天涯社区、豆瓣、新浪、腾讯、网易、西祠胡同等大型论坛


怎么采集的这么多论坛?

其实完全可以借力,他山之石可以攻玉 ,既然是做行车记录仪推广,那想必做汽车导航推广一样走得是一个路子,为了应整这个想法,我去猪八戒威客网搜了下发布的汽车 发帖类任务,就发现了很多资源,如图所示这个任务,任务地址:http://task.zhubajie.com/4481362/

图片

2

可见已经有人在做汽车导航的营销,连论坛资源和软文都有现成儿的,你只需要狠狠的执行,模仿就行了!

大家都在想营销的阶段,人家已经在执行了,而且是狠狠执行,自叹不如,自己真的没精力发帖,那就雇人发!

空想一分钟都是浪费,实践一秒钟就是经验!

最后还是推销下我的小店

欢迎各位光临小店,捧个人场,喜欢就收藏店铺,帮忙转发,在此谢过各位,不买也来看看啊!~~~~
店铺地址:
http://kehanjiluyi.taobao.com

 33

[转载]xp下sql2000的安装问题_百度知道

mikel阅读(818)

[转载]xp下sql2000的安装问题_百度知道.

我遇到过这种问题我告诉你(什么版本都可以装),

办法如下: 

一.在SQL服务器的安装盘中找到MSDE这个目录,并且点击setup.exe安装它,过程简单直接下一步就OK了。 

二. 重启系统WINDOWSXP,这下就可以看到SQL服务的图标出现了。 

三. 再拿出SQL服务器版的安装光盘,直接安装客户端工具(这个不要多说吧?最简单的方法就是直接点击光盘根目录下的autorun.exe) 

根据提示安装,自检过程中知道系统不是SERVER版,会提示只安装客户端工具。(哈哈,服务端我已有了) 

四. 打开企业管理器,试用SA用户连一下看看,是不是发现SA用户登陆失败?因为你还没有与信任SQL SERVER连接相关联。还好这个只要对系统注册表稍加修改就可以啦: 

在运行中输入regedit打开注册表编辑器,找到[HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MSSQLSERVER\MSSQLSERVER],这个项里面 

有一个键值LoginMode,默认下,值是1,现在将值改为2,重启电脑。 

五. 再打开企业管理,再连接试试,是不是OK了!

怎么建个能盈利的网站?

mikel阅读(855)

网站盈利不是在建站之后才知道,其实在建站之初就知道了

就像赛车一样,你的目标就错了,那开得再快,再好也是白费。

很多人都抵不住互联网的舆论诱惑,天天看成功案例,某某网站上线就拿到第一轮融资等等,按捺不住都想试试水,有个想法就招兵买马,然后上线运营,结果竹篮打水一场空,根本不盈利,亏得裤衩儿都没了!

网站真的不是这么造的?

有想法没有盈利模式,摸着石头过河都能融到资的时代已经过去了,谁的钱都不是大风刮来的,投资都需要掂量掂量,你没有想好你的目标市场,盈利模式,谁也不会把钱投给你打水漂儿!

建网站之初就应该想好我的网站应该靠什么活着?! 比如靠卖信息收会员费,靠卖广告,靠卖服务还是靠卖产品等等,但是光想是没用的,一样没人给你钱,需要小火儿慢炖,想好了盈利模式,那就上线试运营,低成本一定要低成本,这样能熬过你的网站存活期,不至于被资金链拖死,除非你是一掷千金的土豪,然后根据市场反馈调整你的网站盈利模式适应市场,坚持到天亮的,总是比死在黎明前黑暗的有机会,活着就有希望,哪怕是半死不活儿!

互联网那么多网站什么觉得网站能否盈利?用户,没有用户一切都是扯淡,就像一个商场,没人,那就跟个墓地没啥区别!得用户者得天下,天下你都有了,你还怕赚不到钱?!看看你天天的上的那只企鹅吧!

别急着谈钱,用户来之不易,你的网站就好比鱼塘,总要有一定的流动性,要不然就是死水啥也留不住,开放才是硬道理,没有这是你的还是我的用户的之分,鱼本来就应该是自由的,用户是最敏感的。要学会引导用户,挖掘用户痛点,然后顺势而为,自然水到渠成,皆大欢喜。

海纳百川 有容乃大

mikel阅读(967)

去了两天海边,放松心情。

如海般的互联网,一样博大精深,每天都会有很多思想和创意出现,要能兼容并蓄的梳理清很难,需要专注一个领域,然后深耕细作,才能有所发展。

存在的即是合理的,冷静客观地分析其内在价值,然后兼容并蓄的转换为我所用的思想。

互联网大潮中保持本心不要迷失,包容各种思维模式,做自己。

捡了海边的一块石头,曾经棱角鲜明的顽石,被海水磨砺的如此圆滑,做人也是如此

图片
psbCA44IG9M

阅读别人的日志是种享受

mikel阅读(861)

那么多好友每天都勤奋的更新日志,发布很多有意思的内容

每个人的人生经历不同,所处的行业不同,写出来的东西也容易让人耳目一新,看到经过深思写出的日志,的确是种享受!

主要是能够从中学到很多东西,尽管发布者没觉得有什么值得学习的东西,在他看来微不足道的东西,可能给你的就是一个未知行业的经验总结,

很多人发愁每天日志写什么,其实很简单,写写自己了解的、从事的工作经验总结就能够让别人受益爱看,毕竟隔行如隔山,你总结的都是你实践的经验,对于想了解或者转型的人会很有收获

从自己擅长的和喜欢的写起,更容易坚持下去。

想法太多 不是啥好事儿

mikel阅读(882)

总是冒出很多想法,然后就去操作执行,结果做到一半儿,又出来新的想法儿,然后又跟着感觉走了

我勒个去!就这么时间都成了麻花儿了,拧着做项目,结果哪个项目都没成!

想法太多,也要学会控制,不能任其蔓延,否则一事无成!

有想法不怕,学学《小强升职记》中的小强,将新想法扔进“收集箱”然后每天有闲空儿了,清理收集箱把不切实际的冲动想法扔掉,把可操作的想法放入”待执行”里面,然后按照事件的紧急程度划分为“紧急重要”,“重要不紧急”,“紧急不重要”,“不重要”的优先级别进行排队处理。

时间管理不好,结果就是现在我的状态,容易被突发事件牵着鼻子走,结果迷失在成堆的想法里面白白浪费时间,降低效率。

写日志引以为戒!

怎么把互联网变成提款机?!

mikel阅读(913)

记得好像不是一次写这个主题了,很多人看到我的空间的名字,都会觉得我在痴人说梦

但是我真的感觉互联网就是个大的提款机,你想要多少钱都可以从里面提出来,前提是你得有互联网思维!

什么是互联网思维?最近炒得也是沸沸扬扬,很多人都在嚷嚷,可实实在在的东西呢?赚到钱了吗?!还是真的产生效益了吗?!

总是在天上飘着,不落地儿,让人们抓不着,反观那些战斗在网(贝兼)第一线的兄弟们就很务实,什么是互联网思维?怎么把互联网变成提款机?这个问题你去问问,就会有很多实际可行的答案,比如可以做威客,打码、手机赚钱、微信卖产品、淘宝客、游戏联盟等等,都是拿起来就可以操作赚到真金白银的方法。

互联网从诞生那天起注定就跟“浮躁”两个字分不开,始终乌烟瘴气,鱼龙混杂。

真正要学会互联网思维,不实践是得不到真解的,就像有了思维你不操作,永远不知道投入产出比多少,怎么控制成本,什么时候该放弃项目,什么时候该加大投资一样。

今天网(贝兼)论坛的一朋友在问大家讲网(贝兼)要做多长时间?
他说自己可以做10年,10年时间已经很不容易了,他是真的实干家,并已经兼职做到每月盈利,还是拿不准互联网到底能(贝兼)多久,我反倒觉得他很实际,在把网上(贝兼)钱当成事业在操作,10年之后鬼知道互联网变成啥样儿了。

如果你把网(贝兼)当成事业,你就踏踏实实的去操作,从实践中学习互联网思维;
如果你只是跟风儿玩玩儿,那奉劝你还是别耽误时间,好好的找个实体买卖干干,互联网不是一夜暴富的赌场,同样要勤勤恳恳的一份耕耘一份收货,别想着发财,能收回成本就不错了。

互联网这个提款机只会给懂得规则的人使用,我的每个实际操作的项目都是一块试验田,不知道会结出什么果儿来,但是不实践连个鬼都不会有,也只是空想。

想要互联网变成你的提款机,先把互联网变成你的试验田吧!

[转载]Android学习系列(1)--为App签名(为apk签名) - 谦虚的天下 - 博客园

mikel阅读(1191)

[转载]Android学习系列(1)–为App签名(为apk签名) – 谦虚的天下 – 博客园.

写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台。
这篇文章是Android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用。

 

1.签名的意义
为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。

 

2.签名的步骤
a.创建key
b.使用步骤a中产生的key对apk签名

 

3.具体操作

 

方法一: 命令行下对apk签名(原理)
创建key,需要用到 keytool.exe (位于jdk1.6.0_24\jre\bin目录下),使用产生的key对apk签名用到的是jarsigner.exe (位于jdk1.6.0_24\bin目录下),把上两个软件所在的目录添加到环境变量path后,打开cmd输入

 

D:\>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
/*说明:-genkey 产生密钥
       -alias demo.keystore 别名 demo.keystore
       -keyalg RSA 使用RSA算法对签名加密
       -validity 40000 有效期限4000天
       -keystore demo.keystore */
D:\>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
/*说明:-verbose 输出签名的详细信息
       -keystore  demo.keystore 密钥库位置
       -signedjar demor_signed.apk demo.apk demo.keystore 正式签名,三个参数中依次为签名后产生的文件demo_signed,要签名的文件demo.apk和密钥库demo.keystore.*/

 

注意事项:Android工程的bin目录下的demo.apk默认是已经使用Debug用户签名的,所以不能使用上述步骤对此文件再次签名。正确步骤应该是:在工程点击右键->Anroid Tools-Export Unsigned Application Package导出的apk采用上述步骤签名。

 

方法二:使用Eclipse导出带签名的apk
Eclipse直接能导出带签名的最终apk,非常方便,推荐使用,步骤如下:
第一步:导出。

第二步:创建密钥库keystore,输入密钥库导出位置和密码,记住密码,下次Use existing keystore会用到。

第三步:填写密钥库信息,填写一些apk文件的密码,使用期限和组织单位的信息。

第四步:生成带签名的apk文件,到此就结束了。

第五步:如果下次发布版本的时候,使用前面生成的keystore再签名。

 


第六步:Next,Next,结束!

 

  方法三:使用IntelliJ IDEA导出带签名的apk
方法步骤基本和Eclipse相同,大概操作路径是:菜单Tools->Andrdoid->Export signed apk。

 

4.签名之后,用zipalign(压缩对齐)优化你的APK文件。
未签名的apk不能使用,也不能优化。签名之后的apk谷歌推荐使用zipalign.exe(位于android-sdk-windows\tools目录下)工具对其优化:

 

D:\>zipalign -v 4 demo_signed.apk final.apk

 

如上,zipalign能够使apk文件中未压缩的数据在4个字节边界上对齐(4个字节是一个性能很好的值),这样android系统就可以使用mmap()(请自行查阅这个函数的用途)函数读取文件,可以在读取资源上获得较高的性能,
PS:1.在4个字节边界上对齐的意思就是,一般来说,是指编译器吧4个字节作为一个单位来进行读取的结果,这样的话,CPU能够对变量进行高效、快速的访问(较之前不对齐)。
2.对齐的根源:android系统中的Davlik虚拟机使用自己专有的格式DEX,DEX的结构是紧凑的,为了让运行时的性能更好,可以进一步用”对齐”进一步优化,但是大小一般会有所增加。

 

5.签名对你的App的影响。
你不可能只做一个APP,你可能有一个宏伟的战略工程,想要在生活,服务,游戏,系统各个领域都想插足的话,你不可能只做一个APP,谷歌建议你把你所有的APP都使用同一个签名证书。
使用你自己的同一个签名证书,就没有人能够覆盖你的应用程序,即使包名相同,所以影响有:
1) App升级。 使用相同签名的升级软件可以正常覆盖老版本的软件,否则系统比较发现新版本的签名证书和老版本的签名证书不一致,不会允许新版本安装成功的。
2) App模块化。android系统允许具有相同的App运行在同一个进程中,如果运行在同一个进程中,则他们相当于同一个App,但是你可以单独对他们升级更新,这是一种App级别的模块化思路。
3) 允许代码和数据共享。android中提供了一个基于签名的Permission标签。通过允许的设置,我们可以实现对不同App之间的访问和共享,如下:

 

AndroidManifest.xml:<permission android:protectionLevel="normal" />

其中protectionLevel标签有4种值:normal(缺省 值),dangerous, signature,signatureOrSystem。简单来说,normal是低风险的,所有的App不能访问和共享 此App。dangerous是高风险的,所有的App都能访问和共享此App。signature是指具有相同签名的App可以访问和共享此App。 signatureOrSystem是指系统image中App和具有相同签名的App可以访问和共享此App,谷歌建议不要使用这个选项,因为签名就足 够了,一般这个许可会被用在在一个image中需要共享一些特定的功能的情况下。
最后,请一定要记得保管好你的签名证书的两个密码,两个密码都不要告诉任何人,也不要把你的密钥库拷贝给别人,包括我!