AILabel标注工具指南(二):禁止图片外标注

背景:在前端开发过程中难免遇到针对图片的缩放平移;以及在图片上进行矢量数据、文本、标注的展示;如果你有上面的任何需求,恭喜你,找到组织了....

在此背景下,AILabel.js出生了。

源代码:https://github.com/dingyang9642/AILabel

API文档:http://ailabel.com.cn/public/ailabel/api/index.html

Demo文档:http://ailabel.com.cn/public/ailabel/demo/index.html

npm下载地址:https://www.npmjs.com/package/ailabel

标注案例展示:
http://zhb_nyx.gitee.io/ailabel_info

数据标注案例(新版本 5.0.16):
AILabel.zip_vueailabel使用-互联网文档类资源-CSDN下载

随着开源,作者的不断更新维护,AILabel的功能已经越来越全面,已经能够充分的满足标注的需求。

在我们标注任务中,往往需求都禁止图片外标注,但是AILabel 中并没有禁止此项目操作。

仔细观察标注坐标可以发现,标注的坐标点位于图片左侧和上方的都是负的,超出图片下方和右方的都大于高度和宽度。

所以当我们标注完成时间拿到坐标点可进行判断,从而禁止图片外标注。

代码奉上:

javascript 复制代码
 var isPOLYGON = true
                    if(shape.points){
                        shape.points.forEach(item => {
                            if(item.x < 0 || item.x > that.imgWidth  || item.y < 0 || item.y > that.imgHeight ) {isPOLYGON =  false}})
                    }else{
                        if(shape.x < 0 || shape.x > that.imgWidth || (shape.x + shape.width) > that.imgWidth || shape.y < 0 || shape.y > that.imgHeight || (shape.y + shape.height) > that.imgHeight){
                            isPOLYGON =  false
                        }
                    }
                    if(isPOLYGON == false){
                        return this.$message.error({
                            message:'超出图片区域,不可标注',
                            showClose: true,
                            duration: 1000,
                        });
                    }

感谢阅读,喜欢的话可以一键三连哦!

相关推荐
百锦再2 天前
重新学习Vue中的按键监听和鼠标监听
javascript·vue.js·vue·计算机外设·click·up·down
飞翔的佩奇2 天前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
百锦再4 天前
Vue中对象赋值问题:对象引用被保留,仅部分属性被覆盖
前端·javascript·vue.js·vue·web·reactive·ref
一笑code4 天前
vue/微信小程序/h5 实现react的boundary
微信小程序·vue·react
eric*16884 天前
尚硅谷张天禹老师课程配套笔记
前端·vue.js·笔记·vue·尚硅谷·张天禹·尚硅谷张天禹
喜欢敲代码的程序员4 天前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:项目搭建(一)
spring boot·mysql·elementui·vue·mybatis
海的诗篇_4 天前
前端开发面试题总结-原生小程序部分
前端·javascript·面试·小程序·vue·html
sunbyte5 天前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | DragNDrop(拖拽占用组件)
前端·javascript·css·vue.js·vue
skyymrj14 天前
Vue3 + Tailwind CSS 后台管理系统教程
前端·css·vue
程序猿小D14 天前
[附源码+数据库+毕业论文]基于Spring+MyBatis+MySQL+Maven+Vue实现的校园二手交易平台管理系统,推荐!
java·数据库·mysql·spring·vue·毕业设计·校园二手交易平台