Skip to content

v1.2.3 修动作淡入的黑框

Choose a tag to compare

@fotlim fotlim released this 18 Oct 06:20
· 4 commits to main since this release

桌面宠物 DesktopPet v1.2.3

只修一个 bug:动作淡入时那块半透明黑框。

原因

淡入要把「上一帧」和「动作第一帧」混起来,这两张图原来都是从 HBITMAP 转的(Image.FromHbitmap),
而 GDI+ 这个转换会丢掉 alpha 通道——透明区域变成黑底。两张一混,50% 黑底铺满整块画布,就是那个黑框。

修法

两边都改成按当前缩放 / 配色 / 画布重新解码原 PNG(Get-PetFrameBitmap),拿到真正的 32bppArgb 透明位图再混:

  • 实测解码帧四角 A=0,中间 A=255
  • 混合帧四角仍然 A=0 —— 不再有黑底
  • 取不到起点帧时不混帧,照常播放(不会把画布画黑)

效果

点动作时:待机姿势 → 6 帧交叉淡入 → 动作,全程背景透明,没有黑框,动作连贯。

升级

解压覆盖(别动 settings.json),托盘退出再 start.bat。