leaferjs元素的基本使用

序言

别因今天的懒惰,让明天的您后悔。输出文章的本意并不是为了得到赞美,而是为了让自己能够学会总结思考;当然,如果有幸能够给到你一点点灵感或者思考,那么我这篇文章的意义将无限放大。

背景

前篇文章我们介绍了leaferjs,那么这篇文章我们就来介绍一下leaferjs大致的元素和用法;这篇文章大致介绍一下以下几个元素的使用:

  • 矩形 - Rect
  • 圆形 - Ellipse
  • 横线 - Line
  • 三角形 - Polygon
  • 五角星 - Star
  • 文本 - Text

今天的我们就来先学习哈,这些最基础的功能,我也会发布到仓库里面大家参考学习仓库地址

Rect

rect可以创建一个矩形,也可以根据自己的需要设置宽高以及颜色(fill)和是否拖动(editable)

示例1:

javascript 复制代码
const rect = new Rect({
  width: 100,
  height: 100,
  fill: 'rgb(50,205,121)',
  editable: true,
});

如果我们想给矩形设置圆角也可以通过属性cornerRadius进行设置;当然我们也可以设置不同角度的圆角,就像css设置border-radius一样。

示例2:更多的属性可以参考文档中进行设置即可。

javascript 复制代码
const rect = new Rect({
    width: 100,
    height: 100,
    fill: 'rgb(50,205,121)',
    cornerRadius: [0, 40, 20, 40]
})

Ellipse

Ellipse主要是用来创建圆形,也可以设置宽高等属性;

示例1:

javascript 复制代码
const ellipse = new Ellipse({
  width: 100,
  height: 100,
  fill: 'rgb(50,205,121)',
});

以上示例只是最简单的圆形元素,圆形可操作型是相当强的,比如环形等等都是可以做的

在css中我们画一个环形是这样做的:

css 复制代码
width: 45px;
height: 45px;
border-radius: 50%;
border: 10px solid rgb(50, 205, 121);

但是在leaferjs中就简单的多了,只需要增加innerRadius: 0.5, 属性即可。

示例2:

javascript 复制代码
const ellipse = new Ellipse({
  width: 100,
  height: 100,
  innerRadius: 0.5,
  fill: 'rgb(50,205,121)',
});

Line

横线也是可以玩出花来,我觉得leaferjs真的挺有意思的,花里胡哨的(我喜欢,哈哈哈)

示例1:这个是很简单的示例。

javascript 复制代码
const line = new Line({
    width: 100,
    strokeWidth: 5,
    stroke: 'rgb(50,205,121)'
})

示例2:通过points可以进行设置各种曲线,包括曲线图也是可以的,相对有意思。

javascript 复制代码
const line = new Line({
    points: [10, 90, 10, 10, 50, 70, 90, 10, 90, 90], 
    curve: true,
    strokeWidth: 5,
    stroke: 'rgb(50,205,121)'
})

Polygon

sides 属性表示多少菱角,cornerRadius 属性表示圆角。

示例1:

javascript 复制代码
const polygon = new Polygon({
    width: 100,
    height: 100,
    sides: 3,
    fill: 'rgb(50,205,121)'
})

示例2:

javascript 复制代码
const polygon = new Polygon({
    width: 100,
    height: 100,
    sides: 6,
    cornerRadius: 10,
    fill: 'rgb(50,205,121)'
})

Text

示例1:基本文本

javascript 复制代码
const text = new Text({
    fill: 'rgb(50,205,121)',
    text: 'Welcome to LeaferJS',
})

示例2:超出文本省略

javascript 复制代码
const text = new Text({
  fill: 'rgb(50,205,121)',
  text: 'Welcome to LeaferJS',
  textOverflow: 'hide',
  fontSize: 40,
  width: 200,
});
text.textOverflow = '...';
workspace.value.add(text);

示例3:首字母大写

javascript 复制代码
const text = new Text({
  fill: 'rgb(50,205,121)',
  text: 'welcome to LeaferJS',
  textOverflow: 'hide',
  fontSize: 40,
  width: 200,
  textCase: 'title',
});
text.textOverflow = '...';
workspace.value.add(text);

总结

以上就是leaferjs元素的基本用法,当然还有很多元素没有写出来,属性同样是的;大家在学习使用的时候可以多看看文档,今天的基本学习就到这儿了;后面有遇到问题以及一些dom的学习上再给大家分享。

相关推荐
WooaiJava41 分钟前
AI 智能助手项目面试技术要点总结(前端部分)
javascript·大模型·html5
LYFlied1 小时前
从 Vue 到 React,再到 React Native:资深前端开发者的平滑过渡指南
vue.js·react native·react.js
爱喝白开水a1 小时前
前端AI自动化测试:brower-use调研让大模型帮你做网页交互与测试
前端·人工智能·大模型·prompt·交互·agent·rag
Never_Satisfied1 小时前
在JavaScript / HTML中,关于querySelectorAll方法
开发语言·javascript·html
董世昌411 小时前
深度解析ES6 Set与Map:相同点、核心差异及实战选型
前端·javascript·es6
B站_计算机毕业设计之家1 小时前
豆瓣电影数据采集分析推荐系统 | Python Vue Flask框架 LSTM Echarts多技术融合开发 毕业设计源码 计算机
vue.js·python·机器学习·flask·echarts·lstm·推荐算法
WeiXiao_Hyy2 小时前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
吃杠碰小鸡2 小时前
高中数学-数列-导数证明
前端·数学·算法
kingwebo'sZone2 小时前
C#使用Aspose.Words把 word转成图片
前端·c#·word
xjt_09012 小时前
基于 Vue 3 构建企业级 Web Components 组件库
前端·javascript·vue.js