-
Notifications
You must be signed in to change notification settings - Fork 18.6k
Closed
Labels
FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.help wanted
Milestone
Description
go 1.12.1 linux/amd64
What did you do?
package main
import "image"
import "image/png"
import "image/gif"
import "os"
import "encoding/base64"
import "strings"
type offsetImage struct{
image.Image
Rect image.Rectangle
}
func (i offsetImage) Bounds() image.Rectangle{
return i.Rect
}
func main() {
tgif:=`R0lGODlhAAGAAPcAAAAAAP///1UATQBFAE4AVABTAFwAUABJAFIAQQBUAEUAIABGAEwAQQBHAC4A
RwBJAEYAAAAAAG6PX0oAAEcAdCALAB0LvxaYj4Y4bo9fSgAAAAAAAAAAAAAAAAAABvBWAMzvVgAS
P/e/AwAAAPdB97+QlPy/+c33v5CU/L8I9FYAA/BWAAAAAACs71YAAAAAAM5EWABfgfu/4hP3v2cB
AADFEve/AGlWADBVcNDGL/m/4hP3v2cBAADFEve/oHEAAAgAAAAoUfe/A0MAAAj0VgAAAAAA3AFp
AAAAAADMRFgACAAARkFUMzIA8FZDOlwAAAgAAACw8lYAAAAAAMSN+L8AAgAAfPBWACCx8n9Y8FYA
5KlngVQVQAAwVXDQWPBWAA6h978ms/e/AABAAAAAAAADAAAAWBVAACAAAABUFUAAwPJWANsU8n8A
AEAAAAAAAFgVQAAIFfJ/DOD8f1gVQABxFfJ/WBVAAAp09H9YFUAAAAAAAAQBAACxc/R/sPJWABT3
VgAAAAAAIAAAADs297/MBAAARwAAAAAAAAAy8VYAHwAAACsRQABS91YA/PBWAF+B+78EFLGBAAIA
AFL3VgArEUAAHwAAAD8AsYEw8VYABBSxgT8AsYEU91YACBFAAEwRQAA48VYAQdH3vwQUsYEU91YA
VPdWAAwRQABAAAAAPwCxgTDxVgAAAgAAQAAAABT3VgAAAAAARPFWAAACAABg8VYAnyj0fwAAAAB4
8VYA5KlngQgRQAAwVXDQePFWAA6h978ms/e/AABAAAAAAAAfAAAADBFAAOj0VgADAAAAAAAAgEH/
97/A8lYATFBUAAMAAAAAAAAAAQAAAAwRQABxFfJ/DBFAAGtz9H8MEUAAFPdWAAAAAAAgAAAAQzpc
TXkgRG9jdW1lbnRzXHBpcmF0ZSBmbGFnLmdpZgAU8lYAjAAAANwOUABEAAAAAwAAAAAAAAAs8lYA
tBEAAHg5aYEgAAAAoKP3vwBgYIGYOWmBtBEAAAAAAAAMYGCBAGBggSH5BAEAAAEALAAAAAAAAYAA
AAj/AAMIHEiwoMGDCBMqXMiwocOHECNKnEixokWCVTJe3Mixo8ePIEOKVJhR48iTKFOqXMnSYMmX
LWPKnEmz5subVWrq3MmzJ0ScN30KHUqUJtCjRZMqXXrxKFCmUKNKPei06tSrWIdW3Zq1q9eYW8N+
HUsWZNizJsuqXesQ7Vm2cONSdetWrt21dOne3fs1r1++gKX6HZwzsGGihAcfXtwzsWPGkME6Thy5
csrJmC1r/oi58+bPFjuLBk36p+jThUurdol69OrXA1vLhq1atm3aoG3rxq1Zt++0vA3/9h188fDj
xfkeR57c7vLnzeE+n546el/q0K1fx05dO1bu3L1PNQVPXjxT8ujNJ0XPXr1W9vCru58ZH/58nfXz
35ecv/7+lf0F+B9KARYo34AcGVgggpwpqCCDxU05+CCEFEloIYURWajhgRjOtaGEHS704Yghsjai
hiUWdOKKKa7oYoguxohhjDQCd1+NNCKI44437ojjfD4GaV6QRHLIW5FEWofkksUtyeSRTjpJW5RU
vkbllbVdqaWRxm2J5WZehllZmGRCRuaZXZ6JJmBqtslmm3ByOVacccpF551s3amnnILtieecfvrZ
VaCCZkXooeMdiihUijZ6XqOQ8klfpI4iRimlPl16aWOaaopfp6BOCmqnMo1qqo0jnXqqSqq2p3pS
q7CKBOusZs1qq6QN3WprgrrqWlGvwE4E7LAZDmtsW8Yey1CyzKIaW7PMIgTttCpOS61A1tJaUmwe
ZqtnANtiiytJ3m4pLn/lkgjuuEal2966qbG7nrutwcttmvQ6ZS+2GK2WLbyFpSWvlbuue2+KABca
rrMIi2juwgM3XCyLEPcrsU0LhgvuxYkOt+/GHNupmMYChxwZUgbza/KRK7fs8sswqxUQADs=`
i,_,err:=image.Decode(base64.NewDecoder(base64.StdEncoding, strings.NewReader(tgif)))
if err!=nil{panic(err)}
w,_:= os.Create("1.png")
png.Encode(w,i)
w,_= os.Create("1.gif")
gif.Encode(w,i,nil)
i2:=offsetImage{i,i.Bounds()} // no offset, same image
w,_= os.Create("2.png")
png.Encode(w,i2)
w,_= os.Create("2.gif")
gif.Encode(w,i2,nil)
}
What did you expect to see?
images the same
What did you see instead?
gif has transparency converted to black, png retains origin transparency.
output:
Metadata
Metadata
Assignees
Labels
FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.help wanted



