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

Fabric.js 限制边框宽度缩放

本文简介

点赞 + 关注 + 收藏 = 学会了


使用 fabric.js 在某些情况下你可能需要固定元素边框的宽度,仔细看文档你会发现 fabric.js 已经为我们提供了这个功能。本文简单介绍一下这个功能。


实现方法

先揭晓答案,将元素的 strokeUniform 属性设置为 true 后,元素在缩放后,边框会恢复成最初设置的大小。

file

<canvas id="canvas" width="500" height="400" style="border: 1px solid #ccc;"></canvas>

<script>
  let rect = new fabric.Rect({
    left: 260,
    top: 110,
    width: 80,
    height: 60,
    fill: 'hotpink',
    stroke: '#333',
    strokeWidth: 10,
    strokeUniform: true // 限制边框宽度缩放
  })

  // 省略部分元素

  canvas.add(rect)
</script>

在本例中,我将几何元素的边框宽度设置成10,在用鼠标拖放几何元素后,元素的边框宽度也会恢复成10。


strokeUniform 的默认值是 false,如果不将 strokeUniform 设置为 true,边框就会随着几何元素的缩放而缩放。


fillstrokestrokeWidth 等属性如果忘了的话可以查看 《Fabric.js从入门到 _ _ _ _ _ _》 复习一下。



遗憾的是

遗憾的是,将 strokeUniform 设置为 true 后对文本元素并不生效。

file

<canvas id="canvas" width="500" height="400" style="border: 1px solid #ccc;"></canvas>

<script>
  let text = new fabric.Text('雷猴啊', {
    top: 30,
    left: 30,
    fill: 'orange',
    stroke: '#333',
    strokeWidth: 2,
    strokeUniform: true // 在 Text 里不生效!!!
  })

  // 省略部分元素

  canvas.add(text)
</script>


代码仓库

⭐ strokeUniform限制边框宽度缩放



推荐阅读

👍《Fabric.js 喷雾笔刷 从入门到放肆》

👍《Fabric.js 监听元素相交(重叠)》

👍《Fabric.js 设置容器类名要注意这几点》

👍《Fabric.js 元素被遮挡的部分也可以操作》

👍《Fabric.js 动态设置字号大小》

👍《Fabric.js 橡皮擦的用法(包含恢复功能)》


点赞 + 关注 + 收藏 = 学会了 代码仓库

相关文章:

  • 发现一只常量
  • day06-表单标签及属性
  • 我的python学习经历及资源整理
  • 基于Java+Swing+mysql游泳馆会员管理系统
  • 新闻稿件怎样在新闻平台上面发布?有几种方法?
  • json-server的学习笔记
  • C++进阶 多态原理
  • 面试官问我 ,try catch 应该在for循环里面还是外面?
  • LeetCode刷题复盘笔记—一文搞懂动态规划之674. 最长连续递增序列问题(动态规划系列第三十篇)
  • 一道非常棘手的 Java 面试题:i++ 是线程安全的吗?
  • 全国职业院校技能大赛中职组网络安全竞赛—[中科磐云](总结经验分享)
  • 第26章 MySQL 索引教程
  • SpringBoot系列之数据库初始化-datasource配置方式
  • 可视化页面数据累加
  • 一文详解深度学习冷板式液冷散热技术规范及要求
  • windows环境下python和gdal绑定方法
  • 智牛股_第8章_Sentinel
  • 【web3】使用web3.js发布并执行智能合约
  • 【学习笔记】函数式编程
  • C++-容器-string:char到int的转换【Ascii码强转:int(char);‘0‘转为48】【直接转换:char - ‘0‘】