精华内容
下载资源
问答
  • ,0,200,200" href="test9_1.html" /> ,200,200,400" href="test9_... img中的usemap属性:usemap里将图像定义为客户器端图像映射。 area将图片分割为不同区域。 随手记一个小案例  --------实训日记,来自wg
    <img src="img/7_5.jpg" usemap="#mymap" height="400" width="400" align="center">
    		<map name=mymap>
    		<area shape = "rect" coords="0,0,200,200" href="test9_1.html" />
    		<area shape="rect" coords="0,200,200,400" href="test9_2.html"/>
    		<area shape = "rect" coords="200,0,400,100" href="test9_3.html" />
    		<area shape = "rect" coords="200,200,400,400" href="test9_4.html"/>
    		</img>

    img中的usemap属性:usemap里将图像定义为客户器端图像映射。
    area将图片分割为不同区域。

    随手记一个小案例
                                                                                                              --------实训日记,来自wg
    展开全文
  • 要在小程序中实现图片放大缩小是着实不容易呀,还要把用户选择的指定区域生成图片,简直令人发指。不多说,上烧鸡(代码)首先还是先来看看要实现的效果用户可以在指定的区域中滑动,放大,缩小自己的图片,点击确定...

    要在小程序中实现图片放大缩小是着实不容易呀,还要把用户选择的指定区域生成图片,简直令人发指。

    不多说,上烧鸡(代码)

    首先还是先来看看要实现的效果

    这里写图片描述

    用户可以在指定的区域中滑动,放大,缩小自己的图片,点击确定之后,把方框中的区域生成图片。这个和上传头像功能差不多。

    首页我们要做的就是怎么才能让照片完美的显示在页面。图片一般分为横版和竖版图片,这两种情况要分开显示。

    wx.chooseImage({
          count: 1, 
          sizeType: ['original'], 
          success: function (res) {
            wx.getImageInfo({
              src: res.tempFilePaths[0],
              success: function (res) {
                //console.log(res.width);
                //console.log(res.height);
                var str = res.width / res.height;
                if(str > 1){//横版图片
    
                }else{//竖版图片
    
                }
              }
            })
          }
    })

    调用wx.getImageInfo方法,拿到用户选择的图片的宽高,用宽除以高就可以判断图片的类型了。

    接下来就是处理图片的宽高了,假设方框的大小是400*400,那么:

    wx.chooseImage({
          count: 1, 
          sizeType: ['original'], 
          success: function (res) {
            wx.getImageInfo({
              src: res.tempFilePaths[0],
              success: function (res) {
                //console.log(res.width);
                //console.log(res.height);
                var str = res.width / res.height;//图片的宽高比
                if(str > 1){//横版图片
                  _this.data.height = 400;//图片的显示高度为400
                  _this.data.width = str  * _this.data.height; //图片的宽度 = 宽高比 * 图片的显示高度
    
                }else{//竖版图片
                  _this.data.width = 400;//图片的显示宽度为400
                  _this.data.height = str  * _this.data.width; //图片的高度 = 宽高比 * 图片的显示宽度
                }
              }
            })
          }
    })

    这样,当是横版图片的时候,用户能左右滑动自己的图片,上下不让他滑动,竖版同理。

    关于怎么让图片和方框居中显示,我是用的padding填充,不是啥难事,这个就自己去摸索吧。

    完成了图片的显示之后,接下来就是进入正题了,首先我们先完成图片的放大缩小功能。

    在小程序中提供了touchstart,touchmove,touchend这三个方法,分别是手指触摸动作开始,手指触摸后移动,手指触摸动作结束,我们要用到这三个方法来完成图片的放大缩小功能。

    wxml:

    <scroll-view scroll-y="true" scroll-x="true" class = "FilePath" bindtouchmove="scroll" bindtouchstart='scroll' bindtouchend='endTou'>
        <image src='{{src}}' style="width: {{width}}px;height: {{height}}px;" bindtouchmove="touch"></image>
      </scroll-view>

    监听手指触摸的方法:

    olddistance,//上一次两个手指的距离
    newdistance:"",//本次两手指之间的距离,两个一减咱们就知道了滑动了多少,以及放大还是缩小(正负嘛)  
    diffdistance:'', //这个是新的比例,新的比例一定是建立在旧的比例上面的,给人一种连续的假象  
    Scale: 1,//图片放大的比例,
    baseHeight:'',       //原始高  
    baseWidth:'',        //原始宽  
    
    //手指在屏幕上移动
    scroll: function (e) {
        var _this = this;
        //当e.touches.length等于1的时候,表示是单指触摸,我们要的是双指
        if (e.touches.length == 2) {//两个手指滑动的时候
          var xMove = e.touches[1].clientX - e.touches[0].clientX;//手指在x轴移动距离
          var yMove = e.touches[1].clientY - e.touches[0].clientY;//手指在y轴移动距离
          var distance = Math.sqrt(xMove * xMove + yMove * yMove);//根据勾股定理算出两手指之间的距离  
          if (_this.data.olddistance == 0) {
            _this.data.olddistance = distance; //要是第一次就给他弄上值,什么都不操作  
           // console.log("第一次");
          }else {
            _this.data.newdistance = distance; //第二次就可以计算它们的差值了  
            _this.data.diffdistance = _this.data.newdistance - _this.data.olddistance;//两次差值
            _this.data.olddistance = _this.data.newdistance; //计算之后更新比例  
            _this.data.Scale = _this.data.oldscaleA + 0.005 * _this.data.diffdistance;//这条公式是我查阅资料后找到的,按照这条公式计算出来的比例来处理图片,能给用户比较好的体验
            if (_this.data.Scale > 2.5){//放大的最大倍数
              return;
            } else if (_this.data.Scale < 1) {//缩小不能小于当前
              return;
            }
            //刷新.wxml ,每次相乘,都是乘以图片的显示宽高
            _this.setData({
              height: _this.data.baseHeight * _this.data.Scale,
              width: _this.data.baseWidth * _this.data.Scale
            })
            _this.data.oldscaleA = _this.data.Scale;//更新比例 
    
    
          }  
        }
      },
      //手指离开屏幕
      endTou: function (e) {
       this.data.olddistance = 0;//重置
       this.getRect();
      }

    getRect()是我用来获取节点信息的方法,用于得到wx.canvasToTempFilePath方法的坐标点。(不懂得朋友可以点进去看看)

    getRect: function () {
        var _this = this;
        wx.createSelectorQuery().select('.FilePath').boundingClientRect(function (rect) {
                  _this.data.x = Math.abs(rect.left);//x坐标
                  _this.data.y = Math.abs(rect.top);//y坐标
                  }).exec()
      }

    wx.createSelectorQuery()可以获取到节点的信息。

    估计看到这里有人就蒙了,其实rect.left和rect.top分别是节点的左边界坐标和节点的上边界坐标,这个坐标可以视为偏移量,就是说’.FilePath’这个节点也就是我放图片的标签往左边和上边偏移了多少,再取他们的绝对值,就得到了我们需要的坐标点了。

    接下来就是最后一步了,我们要来截取图片,

    wxml:

    <canvas canvas-id="myCanvas_A" style="width: {{width}}px;height: {{height}}px;"/>

    js:

    generate: function () {
        var _this = this;
        const ctx_A = wx.createCanvasContext('myCanvas_A');
       var baseWidth = _this.data.baseWidth * _this.data.Scale;//图片放大之后的宽
        var baseHeight = _this.data.baseHeight * _this.data.Scale;//图片放大之后的高
        ctx_A.drawImage(_this.data.src, 0, 0, baseWidth, baseHeight);//我们要在canvas中画一张和放大之后的图片宽高一样的图片
        ctx_A.draw();
         wx.showToast({
          title: '截取中...',
          icon: 'loading',
          duration: 10000
        });//
        setTimeout(function(){//给延时是因为canvas画图需要时间
          wx.canvasToTempFilePath({//调用方法,开始截取
            x: _this.data.x,
            y: _this.data.y,
            width: 400,
            height: 400,
            destWidth: 400,
            destHeight: 400,
            canvasId: 'myCanvas_A',
            success: function (res) {
              console.log(res.tempFilePath);
            }
          })
        }, 2000)
    
      },

    终于,世界都安静了,完成!!!!!!!!!!

    我该开始接到这个任务的时候,我的内心其实是挺崩溃的,后来静下心来,一个功能一个功能的慢慢来,最终,还是弄出来了,挺开心的。

    弄出来之后,发现其实也不难,只要处理好了图片的缩放,其他的都不是啥难事,就是调试的时候特别坑爹,只能在手机上调试,在控制台打了很多输出,慢慢看着来弄的。

    总结:

    图片的缩放就是监听用户双指滑动的距离,在通过公式得到比例,然后拿这个比例和图片的基本宽高相乘就可以了。截取图片这个就很简单了,就是wx.canvasToTempFilePath的开始坐标这个我是废了一番脑子才想到方法取得的。世上无难事,只怕有心人啊。

    再废话一句,这个页面的功能的实现,可页面的样式也是有关的哟。照片的宽高,照片父节点的宽高。。。

    展开全文
  • 图片的热点区域

    千次阅读 2017-06-12 17:17:09
    前端页面的过程中,图片的热点区域链接是我们经常遇到的,最方便的是通过DreameWeaver编辑器进行拖拽绘制热点区域, 热点区域部分的代码也会自动生成,但是这样操作虽然方便,另个一方面也削弱了我们的前端技能...

    在做前端页面的过程中,图片的热点区域链接是我们经常遇到的,最方便的是通过DreameWeaver编辑器进行拖拽绘制热点区域,

    热点区域部分的代码也会自动生成,但是这样操作虽然方便,另个一方面也削弱了我们的前端技能,以至于离开了DW工具就不知道

    具体代码怎么编写了。下面我来具体说一下热点区域的坐标问题,个人理解,仅供参考:

    图片的热点区域的坐标点:是以图片的左上角为坐标点,矩形的左上角坐标x1,y1和矩形的右下角坐标x2,y2来具体确定位置和大小。x1代表距离图片左上角x轴距离为x1,y1代表

    距离图片左上角y轴的距离为y1;x2,y2同理。

    如果是圆形的话的,则坐标分别为圆心和半径

    <img src="img/spir.png" usemap="myMap"/>
    			<map id="myMap" name="myMap">
    				<area href="maxHeight.html" shape="rect" alt="first" coords="x1,y1,x2,y2"/>
    			</map>

    举例如下:

    <div class="test">
    			<img src="img/spir.png" usemap="myMap"/>
    			<map id="myMap" name="myMap">
    				<area href="maxHeight.html" shape="rect" alt="first" coords="0,0,28,28"/>
    				<area href="maxHeight.html" shape="rect" alt="second" coords="0,28,28,56"/>
    				<area href="maxHeight.html" shape="rect" alt="third" coords="0,56,28,84"/>
    				<area href="maxHeight.html" shape="rect" alt="forth" coords="0,84,28,112"/>
    			</map>
    		</div>
    		<script type="text/javascript">
    			$(function(){
    				$('#myMap area').hover(function(){
    					var idx=$(this).index();
    					console.log($(this).attr('alt'))
    				});
    			});
    		</script>



    展开全文
  • 定位到本地后,可以选取想要的位置,通过百度map的在线建议api,然后选取了某个位置后,geocoding回来,在地图上画一个大头针。并得到相应的经纬度。 主要是这个协议,在searchbar的text改变的时候去拿数据,刷新...

    做到的效果流程是这样的这里写图片描述
    效果图
    定位到本地后,可以选取想要的位置,通过百度map的在线建议api,然后选取了某个位置后,geocoding回来,在地图上画一个大头针。并得到相应的经纬度。
    这里写图片描述
    主要是这个协议,在searchbar的text改变的时候去拿数据,刷新table。。。不得不说百度地图略难用。。

    展开全文
  • 前端点击图片的某个区域进行映射

    万次阅读 2020-02-26 20:55:04
    比如现在UI同事给了你一张【如下】,让你在点击这个的每一个行星的时候进行页面跳转。 那么首先我们先引入这个图片: <img src="planets.png" alt=...我们想要在点击图片的某个区域进行跳转或者其他操作的时...
  • android 图片区域点击(图片热区)

    千次阅读 2013-06-06 16:55:18
    思路:把要用的图片调整为合适的大小后(重要),导入到Dreamweaver中,在图片上,把需要添加事件的部分建立图片“热区”,然后映射到手机上的相应区域(有点麻烦,但没想到其它好的方法)。 在该实例中,只对西藏...
  • ![图片说明](https://img-ask.csdn.net/upload/201611/16/1479284086_666294.jpg) 最近在一个项目,我想问一下,这些信息是哪里获取的?我到百度和高德上都找了,都没看到有。 有谁知道吗?
  • 今天介绍的是图片(我这里也可以是任意View 常见的还有Edittext需要这样的功能 指定区域图片合成 放大 缩小 镜像 旋转) 一一分享,当然做法有很多种,我分享其中尝试后最简单的一种有DIY的同学可以加我一起讨论...
  • 在HTML中有一个具有把图片划分成多个作用区域,并链接到不同网页的标记,那就是 地图作用区域标记。  标记主要用于图像地图,通过该标记可以在图像地图中设定作用区域(又称为热点),这样当用户的鼠标移到指定...
  • 需求:最近项目中遇到了这样一个需求,几千条含经纬度的数据,要根据位置将其按照街道分类(街道是比区小一级的行政单位) 先百度了,没有精确到街道一级边界集合,所以只能自己想办法获取各个街道的边界了 步骤...
  • MATLAB区域掩膜(mask)

    千次阅读 热门讨论 2020-03-30 15:27:53
    掩膜有很多种方法,可以自己写程序(当然我不会,哪位仁兄可以指点我一下),也可以借助已有的软件包。 REST 这个是FMRI处理比较早期的一个软件,最新的是RESTplus,我把REST和RESTplus都下载了,事实证明好像...
  • 经常会在项目中用到透明图片,不规则图片,特别是游戏的时候,需要对图片的透明区域的点击事件特别处理。 转载请说明来自:http://blog.csdn.net/aminfo/article/details/7872681,谢谢! 一、先上图片文件...
  • 在一张图片上,点击不同部分区域触发不同事件。 其实就是根据一张已知像素大小的图片,以其左上角作为远点坐标,建立一个右下方向为正轴的二维坐标系。然后建立矩形,圆形等区域并绑定href属性或者其他js事件即可。
  • android判断点击位置在一扇形区域

    千次阅读 2017-07-15 17:01:42
    android 判断点击位置在一扇形区域内在仿支付宝记账本界面效果时遇到了一个问题,在环形中点击每一个环是会显示出不同的内容,因此,必须判断用户到底点击了哪个圆环,网上查阅资料说可以根据颜色来判断,但是...
  • OpenCV—Python 图像指定区域裁剪

    万次阅读 多人点赞 2018-09-19 21:23:59
    一、批量读取图像并截取所需区域 import os import cv2 for i in range(1,201): if i==169 or i==189: i = i+1 path = &amp;amp;amp;amp;quot;C:\\Users\\&amp;amp;amp;amp;quot;+str(i)+&...
  • 图像对焦区域检测

    千次阅读 2016-10-06 10:29:28
    简介  本篇是对图像对焦区域检测的笔记记录。 实现原理  主要依赖于计算标准差... 2、对pic1做区域分割,同时计算pic1的标准差图像。 3、对标准差图像阀值分割,阀值以上为清晰位置。 4、包含清晰位置的分
  • Android如何从图片中切取人脸区域

    千次阅读 2016-04-12 16:30:20
    自拍的图片往往在尺寸、位置上并不完美。而App需要在各种千奇百怪的UI场景下显示用户的头像。所以从原始头像图片中切取出人脸区域看起来是个刚需。这里介绍如何应用Android提供的人脸识别接口完成简单的切取人脸区域...
  • 百度地图 - 自定义划分区域并获取区域内的坐标点

    千次阅读 多人点赞 2020-12-04 11:09:53
    最近在一个大数据人员分布的系统,需要能够在地图上自定义划分区域,并能够获取该区域内的坐标点信息,也是搞了很久才出来,特此记录一下 1、百度地图API 首先我们需要去百度地图申请一个应用,得到密钥 ...
  • 百度地图 行政区域 高亮

    千次阅读 2018-08-03 09:31:37
    最近接着个需求,需要在地图上将行政区域高亮,在网上找了几个方法,都是自己算的点顺序,总结了一下,出现过以下几个问题 ...自己研究了一下,了一下改动,很简单,在这里记录一下。代码如下。 function ...
  • CSS中背景图片区域截取技术

    千次阅读 2014-08-07 19:33:19
    里面包括了很多系列的图片,这个时候我们制作图片的时候大多数人都喜欢把几个或者几十个小图标在一张图片上,这样可以极大的减少浏览器请求文件的次数,也更利于我们管理图片文件。 我们在使用的时候,利用容器...
  • OpenCV如何提取人眼区域的眼球位置

    千次阅读 2019-04-25 16:19:05
    先看下这张二值化的图片,要想得到眼球,我们可以通过一个圆形的结构元素,对这张图像个开操作(先腐蚀再膨胀),但是还存在一个问题,中心的圆形区域还存在噪声,需要先把这个噪声剔除 element1 = cv . ...
  • 1.看明白如下重复的for循环,就可以实现对同一张图片做任意位置的打码与任意数量的扩充了。 import os from PIL import Image import glob import numpy as np outdir = r'C:\Users\admin\Desktop\c1\dama' count...
  • ArcGIS教程:区域直方

    千次阅读 2015-05-29 15:15:32
    创建显示各唯一区域值输入中的像元值频数分布的表和直方
  • 原生js获取 一个dom元素距离页面可视区域位置值 -- getBoundingClientRect getBoundingClientRect()   这个方法返回一个矩形对象,包含四个属性:left、top、right和bottom。分别表示元素各边与页面上边和...
  • 在这篇文章里,我们一起学习了在OpenCV中如何定义感兴趣区域ROI,如何使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操作。 PS:文章末尾提供了博文配套程序...
  • 保证不同小程序使用同一个坐标体系,根据经纬度坐标获取中国省市县地区编码,首先考虑到的是:国内所有地图使用的坐标体系不同,其次考虑到:不同的地图SDK服务调用有次数限制,下面是对比使用的xmind: ...
  • PageOffice怎么可以给word中的数据区域赋值,动态生成word文件,但是如果我想让一个数据区域在文件中的多个位置出现,应该怎么呢?
  • 最近脸搜项目,在固定imageView长宽的列表要,无论原是什么大小和形状,要使图片充满屏幕。有人会说那用 ScaleType.CENTER_CROP不就好了吗。对!但是有个问题会居中显示。现在的需求是,要显示带脸部的区域。 ...
  • matlab绘制散点——指定散点落于一个圆形区域内 问题: 在海豚捕食沙丁鱼的仿真时,我们将沙丁鱼群看成了一个圆形区域内的散点,所以需要用matlab在一个圆形区域内绘制均匀分布的散点。 matlab代码实现 % ...
  • 第一天老师:你知道么,今天有人问了我一个...在用深度学习的时候,比如说面对一张图像,对某个区域感兴趣怎么办? ~.我:他傻啊,切割出来啊,只需要训练感兴趣的部分就好啦。老师:哎,那你给我一个教程,我正好顺手

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 423,603
精华内容 169,441
关键字:

区域位置图怎么做的