|
@@ -178,6 +178,8 @@ const createPoster = async () => {
|
|
let tagY = textY + tagSpacing + 10
|
|
let tagY = textY + tagSpacing + 10
|
|
positionNameList.forEach((tag) => {
|
|
positionNameList.forEach((tag) => {
|
|
let truncatedTag = tag
|
|
let truncatedTag = tag
|
|
|
|
+ ctx.font = '18px Arial' // 绘制前设置字体,否则tagWidth受前面的font fontStyle影响
|
|
|
|
+
|
|
while (context.measureText(truncatedTag + '...').width > maxTextWidth - 2 * tagPaddingLeftRight && truncatedTag.length > 0) {
|
|
while (context.measureText(truncatedTag + '...').width > maxTextWidth - 2 * tagPaddingLeftRight && truncatedTag.length > 0) {
|
|
truncatedTag = truncatedTag.slice(0, -1)
|
|
truncatedTag = truncatedTag.slice(0, -1)
|
|
}
|
|
}
|
|
@@ -200,7 +202,6 @@ const createPoster = async () => {
|
|
context.closePath()
|
|
context.closePath()
|
|
context.fill()
|
|
context.fill()
|
|
|
|
|
|
- context.font = '18px Arial'
|
|
|
|
context.fillStyle = '#fff'
|
|
context.fillStyle = '#fff'
|
|
context.fillText(truncatedTag, tagX + tagPaddingLeftRight, tagY + tagPaddingTopBottom + 10)
|
|
context.fillText(truncatedTag, tagX + tagPaddingLeftRight, tagY + tagPaddingTopBottom + 10)
|
|
|
|
|