質問: タイトルの通りなのですが、 RGBAとNRGBA等のNが頭についた構造体の違いはなんでしょうか。 image.RGBA image.NRGBA RGBAはcolor.RGBAを持っていて、NRGBAはcolor.NRGBAを持っていますが、どちらも同じフィールドを持っていて、メソッドも同じなので何が違うのかがわかりません。 color.RBGA color.NRGBA これらの構造体は何が違っていてどのように使い分ければいいのでしょうか。
回答: The Go image package を読むと、 > > **Colors and Color Models** > > > Note that the R field of an RGBA is an 8-bit **alpha-premultiplied color** in the range [0, 255]. ... Similarly, the NRGBA struct type represents an 8-bit **non-alpha-premultiplied color**, as used by the PNG image format. When manipulating an NRGBA's fields directly, the values are non-alpha-premultiplied, but when calling the RGBA method, the return values are alpha-premultiplied. > > > RGB 値に alpha 値を乗算している(RGBA)か、していないか(NRGBA)の違いがある様です。