]> Cypherpunks repositories - gostls13.git/commitdiff
image/color: add alpha-premultiplied comment.
authorNigel Tao <nigeltao@golang.org>
Wed, 18 Mar 2015 22:46:43 +0000 (09:46 +1100)
committerNigel Tao <nigeltao@golang.org>
Sat, 21 Mar 2015 06:15:57 +0000 (06:15 +0000)
Change-Id: I9968f53a8286a0e5ccc197a9b5fae499e2f95326
Reviewed-on: https://go-review.googlesource.com/7790
Reviewed-by: Rob Pike <r@golang.org>
src/image/color/color.go

index ff596a76a367632484689e60220811b2a7b2c8ed..e062e0f9ac098e96b5daa2ff737b7422b4d2379a 100644 (file)
@@ -12,11 +12,17 @@ type Color interface {
        // for the color. Each value ranges within [0, 0xFFFF], but is represented
        // by a uint32 so that multiplying by a blend factor up to 0xFFFF will not
        // overflow.
+       //
+       // An alpha-premultiplied color component c has been scaled by alpha (a),
+       // so has valid values 0 <= c <= a.
        RGBA() (r, g, b, a uint32)
 }
 
-// RGBA represents a traditional 32-bit alpha-premultiplied color,
-// having 8 bits for each of red, green, blue and alpha.
+// RGBA represents a traditional 32-bit alpha-premultiplied color, having 8
+// bits for each of red, green, blue and alpha.
+//
+// An alpha-premultiplied color component C has been scaled by alpha (A), so
+// has valid values 0 <= C <= A.
 type RGBA struct {
        R, G, B, A uint8
 }
@@ -33,8 +39,11 @@ func (c RGBA) RGBA() (r, g, b, a uint32) {
        return
 }
 
-// RGBA64 represents a 64-bit alpha-premultiplied color,
-// having 16 bits for each of red, green, blue and alpha.
+// RGBA64 represents a 64-bit alpha-premultiplied color, having 16 bits for
+// each of red, green, blue and alpha.
+//
+// An alpha-premultiplied color component C has been scaled by alpha (A), so
+// has valid values 0 <= C <= A.
 type RGBA64 struct {
        R, G, B, A uint16
 }