refactor: 在 LastDiffToImage 函数中调整头像最大高度的计算方式,改为根据文字图像的高度动态设置,以提升图像显示效果

This commit is contained in:
lixiangwuxian 2025-05-11 02:28:53 +08:00
parent 7a19849078
commit 9b7faa13a0
2 changed files with 30 additions and 28 deletions

View File

@ -514,20 +514,6 @@ func (p PlayerDataLite) LastDiffToImage(lastQueryData PlayerDataLite) string {
baseboard := sprite.NewNamedSpriteBoard() baseboard := sprite.NewNamedSpriteBoard()
avatar, err := util.ResizeImageByMaxHeight2Image(filePath, 214)
if err != nil {
log.Default().Printf("缩放头像失败url:%s,err:%v", p.Avatar, err)
}
avatarSpirit := sprite.Sprite{
Name: "avatar",
Image: avatar,
Index: 1,
}
if avatar == nil {
avatarSpirit.Image = image.NewRGBA(image.Rect(0, 0, 0, 0))
}
baseboard.AddSprite(&avatarSpirit)
var sb strings.Builder var sb strings.Builder
sb.WriteString(fmt.Sprintf("玩家 %s\n", p.Name)) sb.WriteString(fmt.Sprintf("玩家 %s\n", p.Name))
sb.WriteString(fmt.Sprintf("区域 %s\n", p.Country)) sb.WriteString(fmt.Sprintf("区域 %s\n", p.Country))
@ -584,6 +570,21 @@ func (p PlayerDataLite) LastDiffToImage(lastQueryData PlayerDataLite) string {
if err != nil { if err != nil {
log.Default().Printf("渲染文字失败err:%v", err) log.Default().Printf("渲染文字失败err:%v", err)
} }
avatar, err := util.ResizeImageByMaxHeight2Image(filePath, uint(textImg.Bounds().Dy()))
if err != nil {
log.Default().Printf("缩放头像失败url:%s,err:%v", p.Avatar, err)
}
avatarSpirit := sprite.Sprite{
Name: "avatar",
Image: avatar,
Index: 1,
}
if avatar == nil {
avatarSpirit.Image = image.NewRGBA(image.Rect(0, 0, 0, 0))
}
baseboard.AddSprite(&avatarSpirit)
textSpirit := sprite.Sprite{ textSpirit := sprite.Sprite{
Name: "text", Name: "text",
Image: textImg, Image: textImg,

View File

@ -333,20 +333,6 @@ func (p PlayerDataLite) LastDiffToImage(lastQueryData PlayerDataLite) string {
baseboard := sprite.NewNamedSpriteBoard() baseboard := sprite.NewNamedSpriteBoard()
avatar, err := util.ResizeImageByMaxHeight2Image(filePath, 214)
if err != nil {
log.Default().Printf("缩放头像失败url:%s,err:%v", p.ProfilePicture, err)
}
avatarSpirit := sprite.Sprite{
Name: "avatar",
Image: avatar,
Index: 1,
}
if avatar == nil {
avatarSpirit.Image = image.NewRGBA(image.Rect(0, 0, 0, 0))
}
baseboard.AddSprite(&avatarSpirit)
var sb strings.Builder var sb strings.Builder
sb.WriteString(fmt.Sprintf("玩家 %s\n", p.Name)) sb.WriteString(fmt.Sprintf("玩家 %s\n", p.Name))
sb.WriteString(fmt.Sprintf("区域 %s\n", p.Country)) sb.WriteString(fmt.Sprintf("区域 %s\n", p.Country))
@ -403,6 +389,21 @@ func (p PlayerDataLite) LastDiffToImage(lastQueryData PlayerDataLite) string {
if err != nil { if err != nil {
log.Default().Printf("渲染文字失败err:%v", err) log.Default().Printf("渲染文字失败err:%v", err)
} }
avatar, err := util.ResizeImageByMaxHeight2Image(filePath, uint(textImg.Bounds().Dy()))
if err != nil {
log.Default().Printf("缩放头像失败url:%s,err:%v", p.ProfilePicture, err)
}
avatarSpirit := sprite.Sprite{
Name: "avatar",
Image: avatar,
Index: 1,
}
if avatar == nil {
avatarSpirit.Image = image.NewRGBA(image.Rect(0, 0, 0, 0))
}
baseboard.AddSprite(&avatarSpirit)
textSpirit := sprite.Sprite{ textSpirit := sprite.Sprite{
Name: "text", Name: "text",
Image: textImg, Image: textImg,