author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Sun, 28 Feb 2016 14:53:56 +0000 | |
changeset 51 | 5293f2b851ab |
parent 29 | 6ba06265e543 |
child 88 | 9d51db2ba641 |
permissions | -rw-r--r-- |
1 | 1 |
"{ Package: 'stx:goodies/libcairo' }" |
2 |
||
3 |
"{ NameSpace: Cairo }" |
|
4 |
||
5 |
SharedPool subclass:#Format |
|
6 |
instanceVariableNames:'' |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
7 |
classVariableNames:'CAIRO_FORMAT_INVALID CAIRO_FORMAT_ARGB32 CAIRO_FORMAT_RGB24 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
8 |
CAIRO_FORMAT_A8 CAIRO_FORMAT_A1 CAIRO_FORMAT_RGB16_565 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
9 |
CAIRO_FORMAT_RGB30' |
1 | 10 |
poolDictionaries:'' |
12 | 11 |
category:'Cairo-Constants' |
1 | 12 |
! |
13 |
||
51
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
14 |
!Format class methodsFor:'documentation'! |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
15 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
16 |
documentation |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
17 |
" |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
18 |
Cairo::Format is used to identify the memory format of image data. |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
19 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
20 |
New entries may be added in future versions. |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
21 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
22 |
Values |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
23 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
24 |
CAIRO_FORMAT_INVALID - no such format exists or is supported. |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
25 |
CAIRO_FORMAT_ARGB32 - each pixel is a 32-bit quantity, with alpha in |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
26 |
the upper 8 bits, then red, then green, then blue. |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
27 |
The 32-bit quantities are stored native-endian. |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
28 |
Pre-multiplied alpha is used. (That is, 50% transparent |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
29 |
red is 0x80800000, not 0x80ff0000.) (Since 1.0) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
30 |
CAIRO_FORMAT_RGB24 - each pixel is a 32-bit quantity, with the upper 8 bits |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
31 |
unused. Red, Green, and Blue are stored in the remaining |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
32 |
24 bits in that order. (Since 1.0) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
33 |
CAIRO_FORMAT_A8 - each pixel is a 8-bit quantity holding an alpha value. (Since 1.0) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
34 |
CAIRO_FORMAT_A1 - each pixel is a 1-bit quantity holding an alpha value. Pixels are |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
35 |
packed together into 32-bit quantities. The ordering of the bits |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
36 |
matches the endianess of the platform. On a big-endian machine, the |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
37 |
first pixel is in the uppermost bit, on a little-endian machine the |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
38 |
first pixel is in the least-significant bit. (Since 1.0) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
39 |
CAIRO_FORMAT_RGB16_565 - each pixel is a 16-bit quantity with red in the upper 5 bits, then green |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
40 |
in the middle 6 bits, and blue in the lower 5 bits. (Since 1.2) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
41 |
CAIRO_FORMAT_RGB30 - like RGB24 but with 10bpc. (Since 1.12) |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
42 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
43 |
[author:] |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
44 |
Jan Vrany <jan.vrany@fit.cvut.cz> |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
45 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
46 |
[instance variables:] |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
47 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
48 |
[class variables:] |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
49 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
50 |
[see also:] |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
51 |
|
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
52 |
" |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
53 |
! ! |
5293f2b851ab
CairGraphicsContext: added support for displaying images with alpha channel
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
29
diff
changeset
|
54 |
|
1 | 55 |
!Format class methodsFor:'initialization'! |
56 |
||
57 |
initialize |
|
58 |
||
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
59 |
CAIRO_FORMAT_INVALID := -1. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
60 |
CAIRO_FORMAT_ARGB32 := 0. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
61 |
CAIRO_FORMAT_RGB24 := 1. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
62 |
CAIRO_FORMAT_A8 := 2. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
63 |
CAIRO_FORMAT_A1 := 3. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
64 |
CAIRO_FORMAT_RGB16_565 := 4. |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
65 |
CAIRO_FORMAT_RGB30 := 5. |
1 | 66 |
! ! |
67 |
||
68 |
!Format class methodsFor:'constants'! |
|
69 |
||
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
70 |
CAIRO_FORMAT_A1 |
1 | 71 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
72 |
^CAIRO_FORMAT_A1 |
1 | 73 |
! |
74 |
||
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
75 |
CAIRO_FORMAT_A8 |
1 | 76 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
77 |
^CAIRO_FORMAT_A8 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
78 |
! |
12 | 79 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
80 |
CAIRO_FORMAT_ARGB32 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
81 |
|
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
82 |
^CAIRO_FORMAT_ARGB32 |
1 | 83 |
! |
84 |
||
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
85 |
CAIRO_FORMAT_INVALID |
1 | 86 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
87 |
^CAIRO_FORMAT_INVALID |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
88 |
! |
1 | 89 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
90 |
CAIRO_FORMAT_RGB16_565 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
91 |
|
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
92 |
^CAIRO_FORMAT_RGB16_565 |
1 | 93 |
! |
94 |
||
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
95 |
CAIRO_FORMAT_RGB24 |
1 | 96 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
97 |
^CAIRO_FORMAT_RGB24 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
98 |
! |
12 | 99 |
|
29
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
100 |
CAIRO_FORMAT_RGB30 |
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
101 |
|
6ba06265e543
Bindinge updated to recent Cairo version.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
23
diff
changeset
|
102 |
^CAIRO_FORMAT_RGB30 |
1 | 103 |
! ! |
104 |
||
105 |
||
106 |
Format initialize! |