Preserve opacity when resizing on image load

This commit is contained in:
Kovid Goyal
2025-11-15 14:56:21 +05:30
parent 25cf8622bc
commit 68805850a5
3 changed files with 4 additions and 4 deletions

2
go.mod
View File

@@ -14,7 +14,7 @@ require (
github.com/kovidgoyal/dbus v0.0.0-20250519011319-e811c41c0bc1
github.com/kovidgoyal/go-parallel v1.1.1
github.com/kovidgoyal/go-shm v1.0.0
github.com/kovidgoyal/imaging v1.8.12
github.com/kovidgoyal/imaging v1.8.13
github.com/seancfoley/ipaddress-go v1.7.1
github.com/shirou/gopsutil/v4 v4.25.10
github.com/zeebo/xxh3 v1.0.2

4
go.sum
View File

@@ -34,8 +34,8 @@ github.com/kovidgoyal/go-parallel v1.1.1 h1:1OzpNjtrUkBPq3UaqrnvOoB2F9RttSt811ui
github.com/kovidgoyal/go-parallel v1.1.1/go.mod h1:BJNIbe6+hxyFWv7n6oEDPj3PA5qSw5OCtf0hcVxWJiw=
github.com/kovidgoyal/go-shm v1.0.0 h1:HJEel9D1F9YhULvClEHJLawoRSj/1u/EDV7MJbBPgQo=
github.com/kovidgoyal/go-shm v1.0.0/go.mod h1:Yzb80Xf9L3kaoB2RGok9hHwMIt7Oif61kT6t3+VnZds=
github.com/kovidgoyal/imaging v1.8.12 h1:S1NIlxNdI86A3MGJNajqp2Pu8/WSVrL8L1B5HbSQsB0=
github.com/kovidgoyal/imaging v1.8.12/go.mod h1:rjyfCTmIGGDjbMWGJ8QN/D/AWjHXD5flIzhjJpOcOVw=
github.com/kovidgoyal/imaging v1.8.13 h1:0UD8ZHj77MBavUUcZo4uwoEJzrirJ0ToAyg8c2RSHjw=
github.com/kovidgoyal/imaging v1.8.13/go.mod h1:rjyfCTmIGGDjbMWGJ8QN/D/AWjHXD5flIzhjJpOcOVw=
github.com/lufia/plan9stats v0.0.0-20230326075908-cb1d2100619a h1:N9zuLhTvBSRt0gWSiJswwQ2HqDmtX/ZCDJURnKUt1Ik=
github.com/lufia/plan9stats v0.0.0-20230326075908-cb1d2100619a/go.mod h1:JKx41uQRwqlTZabZc+kILPrO/3jlKnQ2Z8b7YiVw5cE=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=

View File

@@ -179,7 +179,7 @@ func (self *ImageFrame) Resize(x_frac, y_frac float64) *ImageFrame {
ans := *self
ans.Width = int(x_frac * float64(width))
ans.Height = int(y_frac * float64(height))
ans.Img = imaging.Resize(self.Img, ans.Width, ans.Height, imaging.Lanczos)
ans.Img = imaging.ResizeWithOpacity(self.Img, ans.Width, ans.Height, imaging.Lanczos, self.Is_opaque)
ans.Left = int(x_frac * float64(left))
ans.Top = int(y_frac * float64(top))
return &ans