Skip to content

文本元素

Text

用来渲染文字内容,具体格式如下所示:

ts
type Text = {
  type: 'text';
  x: number;
  y: number;
  w: number;
  h: number;
  angle: number;
  detail: {
    text: string;
    color?: string;
    fontSize?: string;
    fontFamily?: string;
    textAlign?: 'left' | 'center' | 'right';
  };
};

Text.detail 详解

元素的基本属性详情可以看 元素介绍-数据基本格式

Text.detail 数据格式

Text元素的detail属性

ts
type TextDetail = {
  text: string;
  color?: string;
  fontSize?: number;
  lineHeight?: number;
  fontWeight?: 'bold' | string | number;
  fontFamily?: string;
  textAlign?: 'center' | 'left' | 'right';
  verticalAlign?: 'middle' | 'top' | 'bottom';
};

Text.detail 数据属性内容

属性说明类型默认值是否必填备注
text文本内容string-true-
color字体颜色string-true例如 #000000
fontSize字体尺寸number12false-
lineHeight文本行高number-false-
fontWeight字体粗细number-false-
fontFamily字体类型string-false-
textAlign水平对齐'left' | 'center' | 'right''left'false-
verticalAlign垂直对齐'top' | 'middle' | 'bottom''top'false-

完整数据示例

js
const elementText = {
  name: 'text',
  x: 160,
  y: 80,
  w: 200,
  h: 200,
  angle: 0,
  type: 'text',
  detail: {
    text: 'Hello World',
    color: '#3f51b5',
    fontSize: 60,
    textAlign: 'center',
    background: '#3f51b51f',
    borderRadius: 10,
    borderWidth: 2,
    borderColor: '#3f51b5'
  }
};

效果预览

Demo完整预览 Playground >>