当前位置: 首页 > news >正文

如何做购物网站的限购功能代码网站类型有

如何做购物网站的限购功能代码,网站类型有,手机制作ppt用什么软件,洛江网站建设报价摘要#xff1a;这篇HTML5栏目下的“详解如何用HTML5 Canvas API控制图片的缩放变换”#xff0c;介绍的技术点是“html5_canvas、canvas、Html5、控制图片、api、图片”#xff0c;希望对大家开发技术学习和问题解决有帮助。缩放变换scale(sx,sy)传入两个参数#xff0c;分…摘要这篇HTML5栏目下的“详解如何用HTML5 Canvas API控制图片的缩放变换”介绍的技术点是“html5_canvas、canvas、Html5、控制图片、api、图片”希望对大家开发技术学习和问题解决有帮助。缩放变换scale(sx,sy)传入两个参数分别是水平方向和垂直方向上对象的缩放倍数。例如context.scale(2,2)就是对图像放大两倍。其实看上去简单实际用起来还是有一些问题的。我们来看一段代码JavaScript Code复制内容到剪贴板html缩放变换body { background: url(./images/bg3.jpg) repeat; }#canvas { border: 1px solid #aaaaaa; display: block; margin: 50px auto; }你的浏览器居然不支持Canvas赶快换一个吧window.onload function(){varcanvas  document.getElementById(canvas);canvas.width  800;canvas.height  600;varcontext  canvas.getContext(2d);context.fillStyle #FFF;context.fillRect(0,0,800,600);context.strokeStyle red;context.lineWidth  5;for(vari  1; i context.save();context.scale(i,i);context.strokeRect(50,50,150,100);context.restore();}};运行结果其实缩放很简单稍微复杂的是如何让鼠标成为放大或者缩小的中心。如果数学几何不好计算公式就可能看不明白了。JavaScript Code复制内容到剪贴板canvas.onmousewheelcanvas.οnwheelfunction(event){//chrome firefox浏览器兼容varposwindowToCanvas(canvas,event.clientX,event.clientY);event.wheelDeltaevent.wheelDelta?event.wheelDelta:(event.deltaY*(-40));if(event.wheelDelta0){imgScale*2;imgXimgX*2-pos.x;imgYimgY*2-pos.y;}else{imgScale/2;imgXimgX*0.5pos.x*0.5;imgYimgY*0.5pos.y*0.5;}drawImage();}这个时候基本功能就实现了加载一张图片和加载多张图片都差不多维护每一张图片的位置和大小下面来整理一下代码吧。JavaScript Code复制内容到剪贴板varcanvas,context;varimg,//图片对象imgIsLoaded,//图片是否加载完成;imgX0,imgY0,imgScale1;(functionint(){canvasdocument.getElementById(canvas);contextcanvas.getContext(2d);loadImg();})();functionloadImg(){imgnewImage();img.οnlοadfunction(){imgIsLoadedtrue;drawImage();}img.srcmap.jpg;}functiondrawImage(){context.clearRect(0,0,canvas.width,canvas.height);context.drawImage(img,0,0,img.width,img.height,imgX,imgY,img.width*imgScale,img.height*imgScale);}canvas.οnmοusedοwnfunction(event){varposwindowToCanvas(canvas,event.clientX,event.clientY);canvas.οnmοusemοvefunction(event){canvas.style.cursormove;varpos1windowToCanvas(canvas,event.clientX,event.clientY);varxpos1.x-pos.x;varypos1.y-pos.y;pospos1;imgXx;imgYy;drawImage();}canvas.οnmοuseupfunction(){canvas.οnmοusemοvenull;canvas.οnmοuseupnull;canvas.style.cursordefault;}}canvas.onmousewheelcanvas.οnwheelfunction(event){varposwindowToCanvas(canvas,event.clientX,event.clientY);event.wheelDeltaevent.wheelDelta?event.wheelDelta:(event.deltaY*(-40));if(event.wheelDelta0){imgScale*2;imgXimgX*2-pos.x;imgYimgY*2-pos.y;}else{imgScale/2;imgXimgX*0.5pos.x*0.5;imgYimgY*0.5pos.y*0.5;}drawImage();}functionwindowToCanvas(canvas,x,y){varbbox  canvas.getBoundingClientRect();return{x:x - bbox.left - (bbox.width - canvas.width) / 2,y:y - bbox.top - (bbox.height - canvas.height) / 2};}缩放变换应注意的问题看了上面的例子大家一定对产生的结果有点奇怪。一是左上角顶点的坐标变了而是线条的粗细也变了。因此对于缩放变换有两点问题需要注意缩放时图像左上角坐标的位置也会对应缩放。缩放时图像线条的粗细也会对应缩放。比如对于最小的那个原始矩形它左上角的坐标是(5050)线条宽度是5px但是放大2倍后左上角坐标变成了(100100)线条宽度变成了10px。这就是缩放变换的副作用。童鞋们一定在期待着我说解决副作用的途径。很遗憾没有什么好的方法去解决这些副作用。如果想固定左上角坐标缩放可以把左上角坐标变成(00)这样的话无论是什么倍数0乘上它还是0所以不变。如果不想让线条粗细变化那就别使用线条。或者自己封装一个函数不要使用scale()。究其根本之前我们说过平移变换、旋转变换、缩放变换都属于坐标变换或者说是画布变换。因此缩放并非缩放的是图像而是整个坐标系、整个画布就像是对坐标系的单位距离缩放了一样所以坐标和线条都会进行缩放。仔细想想这一切貌似挺神奇的。
http://wiki.neutronadmin.com/news/349818/

相关文章:

  • 医疗 企业 网站制作泰安房产网
  • 网站建设公司怎么做的中铁三局招聘事件
  • 如何做彩票网站信息奉化市住房和城乡建设局网站
  • 钓鱼网站在线下载网站服务器出错了怎么办
  • 上海专业做网站较好的公司有哪些wordpress商品列表
  • 衣服定制的app有哪些seo外包杭州
  • 深圳旅游公司网站wordpress主题安装不
  • 手表网站建设规划书东道设计公司待遇如何
  • 网站发布 图片看不到开发公司解除前期物业服务合同
  • 做个人网站要多少钱如何把图片做网站背景
  • 哈尔滨做网站搭建的腾讯云服务器搭建网站
  • wordpress程序网站深圳网站建设的客户在哪里
  • 方特网站是谁做的flask网站开发源码
  • 大公司做网站网站logo上传
  • 营销策划推广公司seo优化排名平台
  • 扬州市建设工程造价管理站网站深圳市建工建设集团有限公司官网
  • 重庆汽车网站建设wordpress做付费下载站
  • vs 2017网站开发php淘宝网首页
  • 阿里云网站建设 部署与发布成都网站建设 seo
  • 北京网站建设公司华网制作作杭州外贸网站多少钱
  • 提供网站建设和制作百度软件下载
  • 网站建设工程师职责说明建站网站哪个最好
  • 深圳网站建设力荐上榜网络wordpress 如何重启
  • 张裕网站建设的目标中国企发网
  • 网站主页与导航栏的设计网站建设的资料的准备
  • 地产公司做网站维护写代码么深圳高端网站定制公
  • 建设工程信息服务平台新网站东莞网站建设 钢结构
  • 陕西省建设厅网站ca验证失败网站设计的公司报价
  • 商城网站建设预算要多少钱视频拍摄教程
  • 山西网站制作公司哪家好房产中介网站建设技巧