51 lines
1.5 KiB
JavaScript
51 lines
1.5 KiB
JavaScript
|
|
// 构造函数
|
|||
|
|
|
|||
|
|
function TextStyle() {
|
|||
|
|
this.hn = '';// hn 标题,1~9
|
|||
|
|
this.strikeThrough = 0;// 删除线 1=有
|
|||
|
|
this.backColor = '';// 背景色,颜色值
|
|||
|
|
this.underline = 0;// 下划线 1=有
|
|||
|
|
this.align = 0;// 对齐 1=左 2=中 3=右
|
|||
|
|
this.bold = 0;// 加粗 1=有
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 原型
|
|||
|
|
TextStyle.prototype = {
|
|||
|
|
constructor: TextStyle,
|
|||
|
|
notEq(compare) {
|
|||
|
|
return !this.eq(compare);
|
|||
|
|
},
|
|||
|
|
eq(compare) {
|
|||
|
|
if (!compare) return false;
|
|||
|
|
if (this == compare) return true;
|
|||
|
|
return this.hn == compare.hn
|
|||
|
|
&& this.strikeThrough == compare.strikeThrough
|
|||
|
|
&& this.backColor == compare.backColor
|
|||
|
|
&& this.underline == compare.underline
|
|||
|
|
&& this.align == compare.align
|
|||
|
|
&& this.bold == compare.bold;
|
|||
|
|
},
|
|||
|
|
getCls() {
|
|||
|
|
let clsSet = new Set();
|
|||
|
|
if (this.hn) clsSet.add('head').add('head-' + this.hn);
|
|||
|
|
if (this.strikeThrough) clsSet.add('strikethrough');
|
|||
|
|
if (this.backColor) clsSet.add('backcolor-' + this.backColor);
|
|||
|
|
if (this.underline) clsSet.add('underline');
|
|||
|
|
if (this.align) clsSet.add('align-' + this.align);
|
|||
|
|
if (this.bold) clsSet.add('bold');
|
|||
|
|
return Array.from(clsSet).join(" ");
|
|||
|
|
},
|
|||
|
|
clone() {
|
|||
|
|
let result = new TextStyle();
|
|||
|
|
result.hn = this.hn;// hn 标题,1~9
|
|||
|
|
result.strikeThrough = this.strikeThrough;// 删除线 1=有
|
|||
|
|
result.backColor = this.backColor;// 背景色,颜色值
|
|||
|
|
result.underline = this.underline;// 下划线 1=有
|
|||
|
|
result.align = this.align;// 对齐 1=左 2=中 3=右
|
|||
|
|
result.bold = this.bold;// 加粗 1=有
|
|||
|
|
return result;
|
|||
|
|
},
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
export default TextStyle;
|