1

vue-sketch-ruler

一个vue组件的素描标尺

github地址

https://github.com/chuxiaoguo/vue-sketch-ruler

在线demo

image.png

点击这里查看

安装

支持全局导入和模块导入
npm install --save vue-sketch-ruler

支持的功能

  • [✔] 标尺渲染
  • [✔] 缩放内容,重绘标尺
  • [✔] 滚动内容,重绘标尺
  • [✔] 切换标尺状态,显示或隐藏
  • [✔] 参考线管理(增加删除)
  • [✔] 切换参考线状态,显示或隐藏

未来支持的功能

  • [] 支持标尺的右键菜单
  • [] 标角支持事件
  • [] 分离css样式,支持导入样式
  • [] 国际化

使用

<template>
    <SketchRule
        :lang="lang"
        :thick="thick"
        :scale="scale"
        :width="582"
        :height="482"
        :startX="startX"
        :startY="startY"
        :shadow="shadow"
        :horLineArr="lines.h"
        :verLineArr="lines.v"
        :cornerActive="true"
        @handleLine="handleLine"
        @onCornerClick="handleCornerClick"
    >
</template>
<script>
import Vue from 'vue';
import SketchRule from "vue-sketch-ruler";
const rectWidth = 160;
const rectHeight = 200;
export default Vue.extend({
    data() {
        return {
            scale: 2, //658813476562495, //1,
            startX: 0,
            startY: 0,
            lines: {
                h: [100, 200],
                v: [100, 200]
            },
            thick: 20,
            lang: "zh-CN",
            isShowRuler: true,
            isShowReferLine: true
        }
    },
    components: {
        SketchRule
    }
});
</script>

参考一个完整的例子,点击这里

api

接口 <TypeScript>

interface Lines {
    h: number[],
    v:  Array<Number>,
}
interface Shadow {
    x: number,
    y: number,
    width: number,
    height: number
}
interface Palette {
    bgColor: string, // ruler bg color
    longfgColor: string, // ruler longer mark color
    shortfgColor: string, // ruler shorter mark color
    fontColor: string, // ruler font color
    shadowColor: string, // ruler shadow color
    lineColor: string,
    borderColor: string',
    cornerActiveColor: string,
}

属性

属性名称描述类型默认值
lang初始化的语言Stringzh-CN
scale初始化标尺的缩放Number2
thick标尺的厚度Number16
width放置标尺窗口的宽度Number-
height放置标尺窗口的高度Number-
startXx轴标尺开始的坐标数值Number0
startYy轴标尺开始的坐标数值Number0
shadow阴影的参数Shadow0
horLineArr初始化水平标尺上的参考线Array<number>[]
verLineArr初始化垂直标尺上的参考线Array<number>[]
palette标尺的样式配置参数Palette{bgColor: 'rgba(225,225,225, 0)',longfgColor: '#BABBBC',shortfgColor: '#C8CDD0',fontColor: '#7D8694', shadowColor: '#E8E8E8',lineColor: '#EB5648', borderColor: '#DADADC',cornerActiveColor: 'rgb(235, 86, 72, 0.6)',}

Event

事件名称描述回调参数
handleLine在横纵标尺上操作参考线(新增或移除)Lines

引用

一个来自墨刀的react标尺组件 mb-sketch-ruler .


chuxiaoguo
334 声望44 粉丝

可视化数据开发工程师,自己独立开发了数据可视化网站[[链接]],欢迎star