Commit b870bda6a070e460b5e7a613327953e7d03695e8

Authored by pengye
1 parent 4f0ed36f

邀请函模板2-22小程序通知卡片,新增显示包间名

... ... @@ -304,6 +304,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -557,8 +558,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -573,6 +574,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -580,6 +584,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1450,7 +1455,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -332,6 +332,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -574,8 +575,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -590,6 +591,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -597,6 +601,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1529,7 +1534,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -340,6 +340,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -583,8 +584,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -599,6 +600,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -606,6 +610,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1539,7 +1544,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -301,6 +301,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -543,8 +544,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -559,6 +560,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -566,6 +570,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1397,7 +1402,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -301,6 +301,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -543,8 +544,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -559,6 +560,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -566,6 +570,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1352,7 +1357,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -301,6 +301,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -543,8 +544,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -559,6 +560,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -566,6 +570,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1352,7 +1357,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -300,6 +300,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -542,8 +543,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -558,6 +559,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -565,6 +569,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1351,7 +1356,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -258,6 +258,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -496,8 +497,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -512,6 +513,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -519,6 +523,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1309,7 +1314,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -301,6 +301,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -543,8 +544,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -559,6 +560,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -566,6 +570,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1352,7 +1357,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -301,6 +301,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -542,8 +543,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -558,6 +559,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -565,6 +569,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1351,7 +1356,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -318,6 +318,7 @@ Page({
let dateStr = util.unixtoTime(reserev.ddate, 'HH点')
let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分')
let detail = this.formatDatail(reserev, dateSmart)
detail.oneTableName = res.data.tables[0].name;
reserev.soltName = '';
this.setData({
detail,
... ... @@ -562,8 +563,8 @@ Page({
time = timeStr ? timeStr : time;
let [day1, day2] = [...util.unixtoTime(data.ddate, '周WW')]
let section = ''
// 老样式1234
if (type1 && !type2) {
// 老样式123
if (type1 && !type2 && type1 != '4') {
section = type1 == '1' ? week + timeSlot1 : type1 == '2' ? week + time : type1 == '3' ? week + timeSlot2 : '';
}
// 新样式
... ... @@ -578,6 +579,9 @@ Page({
section = type2 == '1' ? time + timeSlot2.trim() : type2 == '2' ? timeSlot1.trim() : type2 == '3' ? time.trim() : type2 == '4' ? timeSlot2.trim() : '';
}
}
if (type1 && !type2 && type1 == '4') {
section = week + timeSlot2;
}
this.setData({
wxml: canvas({
imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png',
... ... @@ -585,6 +589,7 @@ Page({
sellerName: data.seller.sellername,
date: util.unixtoTime(data.ddate, 'MM月DD日'),
time: section,
oneTableName: data.oneTableName,
},
type1,
type2,
... ... @@ -1391,7 +1396,7 @@ Page({
let style =lite_style.split('-');
let type1 =style[0];
let type2 =style[1];
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3'))){
if((type1=='2' && !type2) || (type2 && (type2 == '1' || type2 == '3') || (type1=='4' && !type2))){
let time = temp_ddate || this.data.timeList[index]
this.painterBtn(
lite_style,
... ...
... ... @@ -12,7 +12,7 @@ module.exports = data => {
}
}, ]
// 原来的样式1,2,3
if (data.type1 && !data.type2) {
if (data.type1 && !data.type2 && data.type1 != '4') {
views.push({
"type": "image",
"url": 'https://nosqn.colorcun.com/rectangleBj.png',
... ... @@ -375,6 +375,128 @@ module.exports = data => {
}
}, );
}
// 新的样式4
if (data.type1 && !data.type2 && data.type1 == '4') {
views.push({
"type": "image",
"url": 'https://nosqn.colorcun.com/rectangleBj.png',
"css": {
"width": "210px",
"height": "168px",
"top": "0px",
"left": "0px",
"mode": "aspectFill"
}
}, {
"type": "text",
"text": data.info.sellerName,
"css": {
"color": "#FFEFC5",
"width": "190px",
"top": "10px",
"left": "10px",
"right": "10px",
"borderColor": "#000000",
"fontSize": "12px",
"fontWeight": "400",
"maxLines": "2",
"textStyle": "fill",
"textDecoration": "none",
"fontFamily": "PingFang SC",
"textAlign": "center",
}
}, {
"type": "text",
"text": data.info.date,
"css": {
"color": "#FFEFC5",
"width": "100px",
"height": "168px",
"top": "142px",
"left": "10px",
"borderColor": "#000000",
"fontSize": "18px",
"fontWeight": "500",
"maxLines": "1",
"textStyle": "fill",
"textDecoration": "none",
"fontFamily": "PingFang SC",
"textAlign": "left",
}
}, {
"type": "text",
"text": data.info.time,
"css": {
"color": "#FFEFC5",
"width": "100px",
"height": "168px",
"top": "142px",
"left": "120px",
"borderColor": "#000000",
"fontSize": "18px",
"fontWeight": "500",
"maxLines": "1",
"textStyle": "fill",
"textDecoration": "none",
"fontFamily": "PingFang SC",
"textAlign": "left",
}
})
const fontSize = 24;
const padding = 4;
const canvasWidth = 210;
const textTop = 60;
// 处理显示文本
let displayText = data.info.oneTableName;
if (displayText && displayText.length > 7) {
displayText = displayText.substring(0, 6) + "...";
}
// 计算宽度(考虑中英文差异)
function getTextWidth(text, fontSize) {
let width = 0;
for (let i = 0; i < text.length; i++) {
const charCode = text.charCodeAt(i);
// 中文字符或全角字符
if (charCode > 127 || (charCode >= 0xFF00 && charCode <= 0xFFEF)) {
width += fontSize * 1.0;
} else {
width += fontSize * 0.6; // 英文字符、数字或半角符号
}
}
return Math.ceil(width);
}
// 计算文本宽度
const textWidth = getTextWidth(displayText, fontSize);
const bgWidth = textWidth + padding * 2;
const bgHeight = fontSize + padding * 1;
// 计算居中位置
const leftPosition = (canvasWidth - bgWidth) / 2;
// 添加到views
views.push({
"type": "text",
"text": displayText,
"css": {
"color": "#FFEFC5",
"width": bgWidth + 'px',
"height": bgHeight + 'px',
"top": textTop + 'px',
"left": Math.max(0, leftPosition) + 'px', // 确保不超出左边界
'background': 'rgba(255, 239, 197, 0.4)',
"fontSize": fontSize + 'px',
"fontWeight": "normal",
"maxLines": "1",
"overflow": "visible",
"textStyle": "fill",
"textDecoration": "none",
"fontFamily": "PingFang SC",
"textAlign": "center",
"lineHeight": bgHeight + 'px',
"boxSizing": "border-box",
"borderRadius": "5px",
"padding": "0 0 4px 0",
}
});
}
return {
"width": "210px",
"height": "168px",
... ...