Ternary Raster Operations
9/9/2008
Códigos operação de varredura Ternário definem como a interface dispositivo gráfico (GDI) combina os bits em um bitmap origem com os bits no bitmap de destino.
Este tópico lista a varredura Ternário-operação códigos usados pelo BitBlt, PatBlt, e StretchBlt funções.
Cada varredura-operação codificar representa um Boolean operação na qual os valores de pixels de origem, o pincel selecionado e o destino são combinados.
A seguinte tabela mostra os operandos três usados nessas operações.
Operando | Significado |
---|---|
D |
Bitmap de destino |
P |
Pincel selecionado (também chamado padrão) |
S |
Bitmap de origem |
A seguinte tabela mostra a Boolean operadores usados em operações de varredura Ternário.
Operador | Significado |
---|---|
Um |
Bit a bit E |
n |
Não bit a bit (inverso) |
The |
Bit a bit OU |
x |
Bitwise OR (XOR) exclusivo |
Boolean todas as operações são apresentadas em inverter notação polonês. De exemplo, a seguinte operação substituirá os valores dos pixels em bitmap de destino com uma combinação dos valores pixel da origem e pincel:
PSo
A seguinte operação combina os valores de pixels na origem e pincel com valores de pixel do bitmap de destino (há alternativo grafias da mesma função, caso embora um ortográfico específico não possa ser na lista, um equivalente forma seria):
DPSoo
Cada varredura - codificar operação é um 32 - bit inteiro cuja alta-ordem palavra é um Boolean índice operação e cuja baixa-palavra ordem é codificar a operação.
O 16-bit operação índice é um zero - estendido, 8 - valor bit que representa o resultado do Boolean operação nos valores predefinidos pincel, origem e destino.
De exemplo, os índices operação para as operações PSo e DPSoo são mostrados na seguinte tabela.
P | S | D | PSo | DPSoo |
---|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Índice operação: |
|
|
00FCh |
00FEh |
Este maiúsculas e minúsculas, PSo tem o índice operação 00FC (ler a partir de inferior até); DPSoo tem o 00FE índice operação.
Esses valores definem a localidade do correspondente varredura-operação códigos, como mostra a seguinte tabela Raster-Operation Codes.
A operação PSo está na linha 252 (00FCh) da tabela; DPSoo está na linha 254 (00FEh).
As operações de varredura mais comumente usadas recebeu nomes especiais no arquivo de cabeçalho Wingdi.h (incluído por Windows.h). Esses comum nomes são mostrados na tabela abaixo, use-los sempre que possível em seus aplicativos.
Quando os bitmaps origem e destino são monocromático, um valor de 0 bit representa um pixel em preto e um valor de 1 bit representa um pixel em branco. Quando a origem e os bitmaps destino são cor, essas cores são representados com valores RGB. Para obter mais informações sobre valores RGB, consulte RGB.
Códigos de varredura-operação
Boolean função (hexadecimal) | Operação de varredura (hexadecimal) | Boolean função em inverter Polonês | Nome comum |
---|---|---|---|
00 |
00000042 |
0 |
BLACKNESS |
01 |
00010289 |
DPSoon |
|
02 |
00020C89 |
DPSona |
|
03 |
000300AA |
PSon |
|
04 |
00040C88 |
SDPona |
|
05 |
000500A9 |
DPon |
|
06 |
00060865 |
PDSxnon |
|
07 |
000702C5 |
PDSaon |
|
08 |
00080F08 |
SDPnaa |
|
09 |
00090245 |
PDSxon |
|
0A |
000A0329 |
DPna |
|
0B |
000B0B2A |
PSDnaon |
|
0C |
000C 0324 |
SPna |
|
0D |
000D0B25 |
PDSnaon |
|
0E |
000E08A5 |
PDSonon |
|
0F |
000F0001 |
Pn |
|
10 |
00100C85 |
PDSona |
|
11 |
001100A6 |
DSon |
NOTSRCERASE |
12 |
00120868 |
SDPxnon |
|
13 |
001302C8 |
SDPaon |
|
14 |
00140869 |
DPSxnon |
|
15 |
001502C9 |
DPSaon |
|
16 |
00165CCA |
PSDPSanaxx |
|
17 |
00171D54 |
SSPxDSxaxn |
|
18 |
00180D59 |
SPxPDxa |
|
19 |
00191CC8 |
SDPSanaxn |
|
1A |
001A06C5 |
PDSPaox |
|
1B |
001B0768 |
SDPSxaxn |
|
1C |
001C06CA |
PSDPaox |
|
1D |
001D 0766 |
DSPDxaxn |
|
1E |
001E01A5 |
PDSox |
|
1F |
001F0385 |
PDSoan |
|
20 |
00200F09 |
DPSnaa |
|
21 |
00210248 |
SDPxon |
|
22 |
00220326 |
DSna |
|
23 |
00230B24 |
SPDnaon |
|
24 |
00240D55 |
SPxDSxa |
|
25 |
00251CC5 |
PDSPanaxn |
|
26 |
002606C8 |
SDPSaox |
|
27 |
00271868 |
SDPSxnox |
|
28 |
00280369 |
DPSxa |
|
29 |
002916CA |
PSDPSaoxxn |
|
2A |
002A0CC9 |
DPSana |
|
2B |
002B1D58 |
SSPxPDxaxn |
|
2C |
002C 0784 |
SPDSoax |
|
2D |
002D060A |
PSDnox |
|
2E |
002E064A |
PSDPxox |
|
2F |
002F0E2A |
PSDnoan |
|
30 |
0030032A |
PSna |
|
31 |
00310B28 |
SDPnaon |
|
32 |
00320688 |
SDPSoox |
|
33 |
00330008 |
Sn |
NOTSRCCOPY |
34 |
003406C4 |
SPDSaox |
|
35 |
00351864 |
SPDSxnox |
|
36 |
003601A8 |
SDPox |
|
37 |
00370388 |
SDPoan |
|
38 |
0038078A |
PSDPoax |
|
39 |
00390604 |
SPDnox |
|
3A |
003A0644 |
SPDSxox |
|
3B |
003B0E24 |
SPDnoan |
|
3C |
003C004A |
PSx |
|
3D |
003D18A4 |
SPDSonox |
|
3E |
003E1B24 |
SPDSnaox |
|
3F |
003F00EA |
PSan |
|
40 |
00400F0A |
PSDnaa |
|
41 |
00410249 |
DPSxon |
|
42 |
00420D5D |
SDxPDxa |
|
43 |
00431CC4 |
SPDSanaxn |
|
44 |
00440328 |
SDna |
SRCERASE |
45 |
00450B29 |
DPSnaon |
|
46 |
004606C6 |
DSPDaox |
|
47 |
0047076A |
PSDPxaxn |
|
48 |
00480368 |
SDPxa |
|
49 |
004916C5 |
PDSPDaoxxn |
|
4A |
004A0789 |
DPSDoax |
|
4B |
004B0605 |
PDSnox |
|
4C |
004C0CC8 |
SDPana |
|
4D |
004D1954 |
SSPxDSxoxn |
|
4E |
004E0645 |
PDSPxox |
|
4F |
004F0E25 |
PDSnoan |
|
50 |
00500325 |
PDna |
|
51 |
00510B26 |
DSPnaon |
|
52 |
005206C9 |
DPSDaox |
|
53 |
00530764 |
SPDSxaxn |
|
54 |
005408A9 |
DPSonon |
|
55 |
00550009 |
DN |
DSTINVERT |
56 |
005601A9 |
DPSox |
|
57 |
00570389 |
DPSoan |
|
58 |
00580785 |
PDSPoax |
|
59 |
00590609 |
DPSnox |
|
5A |
005A0049 |
DPx |
PATINVERT |
5B |
005B18A9 |
DPSDonox |
|
5C |
005C 0649 |
DPSDxox |
|
5D |
005D0E29 |
DPSnoan |
|
5E |
005E1B29 |
DPSDnaox |
|
5F |
005F00E9 |
DPan |
|
60 |
00600365 |
PDSxa |
|
61 |
006116C6 |
DSPDSaoxxn |
|
62 |
00620786 |
DSPDoax |
|
63 |
00630608 |
SDPnox |
|
64 |
00640788 |
SDPSoax |
|
65 |
00650606 |
DSPnox |
|
66 |
00660046 |
DSx |
SRCINVERT |
67 |
006718A8 |
SDPSonox |
|
68 |
006858A6 |
DSPDSonoxxn |
|
69 |
00690145 |
PDSxxn |
|
6A |
006A01E9 |
DPSax |
|
6B |
006B178A |
PSDPSoaxxn |
|
6C |
006C01E8 |
SDPax |
|
6D |
006D 1785 |
PDSPDoaxxn |
|
6E |
006E1E28 |
SDPSnoax |
|
6F |
006F0C65 |
PDSxnan |
|
70 |
00700CC5 |
PDSana |
|
71 |
00711D5C |
SSDxPDxaxn |
|
72 |
00720648 |
SDPSxox |
|
73 |
00730E28 |
SDPnoan |
|
74 |
00740646 |
DSPDxox |
|
75 |
00750E26 |
DSPnoan |
|
76 |
00761B28 |
SDPSnaox |
|
77 |
007700E6 |
DSan |
|
78 |
007801E5 |
PDSax |
|
79 |
00791786 |
DSPDSoaxxn |
|
7A |
007A1E29 |
DPSDnoax |
|
7B |
007B0C68 |
SDPxnan |
|
7C |
007C1E24 |
SPDSnoax |
|
7D |
007D0C69 |
DPSxnan |
|
7E |
007E0955 |
SPxDSxo |
|
7F |
007F03C9 |
DPSaan |
|
80 |
008003E9 |
DPSaa |
|
81 |
00810975 |
SPxDSxon |
|
82 |
00820C49 |
DPSxna |
|
83 |
00831E04 |
SPDSnoaxn |
|
84 |
00840C48 |
SDPxna |
|
85 |
00851E05 |
PDSPnoaxn |
|
86 |
008617A6 |
DSPDSoaxx |
|
87 |
008701C5 |
PDSaxn |
|
88 |
008800C6 |
DSA |
SRCAND |
89 |
00891B08 |
SDPSnaoxn |
|
8A |
008A0E06 |
DSPnoa |
|
8B |
008B0666 |
DSPDxoxn |
|
8C |
008C0E08 |
SDPnoa |
|
8D |
008D 0668 |
SDPSxoxn |
|
8E |
008E1D7C |
SSDxPDxax |
|
8F |
008F0CE5 |
PDSanan |
|
90 |
00900C45 |
PDSxna |
|
91 |
00911E08 |
SDPSnoaxn |
|
92 |
009217A9 |
DPSDPoaxx |
|
93 |
009301C4 |
SPDaxn |
|
94 |
009417AA |
PSDPSoaxx |
|
95 |
009501C9 |
DPSaxn |
|
96 |
00960169 |
DPSxx |
|
97 |
0097588A |
PSDPSonoxx |
|
98 |
00981888 |
SDPSonoxn |
|
99 |
00990066 |
DSxn |
|
9A |
009A0709 |
DPSnax |
|
9B |
009B07A8 |
SDPSoaxn |
|
9C |
009C 0704 |
SPDnax |
|
9D |
009D07A6 |
DSPDoaxn |
|
9E |
009E16E6 |
DSPDSaoxx |
|
9F |
009F0345 |
PDSxan |
|
A0 |
00A000C9 |
DPa |
|
A1 |
00A11B05 |
PDSPnaoxn |
|
A2 |
00A20E09 |
DPSnoa |
|
A3 |
00A30669 |
DPSDxoxn |
|
A4 |
00A41885 |
PDSPonoxn |
|
A5 |
00A50065 |
PDxn |
|
A6 |
00A60706 |
DSPnax |
|
A7 |
00A707A5 |
PDSPoaxn |
|
A8 |
00A803A9 |
DPSoa |
|
A9 |
00A90189 |
DPSoxn |
|
AA |
00AA0029 |
D |
|
Ab |
00AB0889 |
DPSono |
|
Corrente alternada |
00AC0744 |
SPDSxax |
|
AD |
00AD06E9 |
DPSDaoxn |
|
AE |
00AE0B06 |
DSPnao |
|
AF |
00AF0229 |
DPno |
|
B0 |
00B00E05 |
PDSnoa |
|
B1 |
00B10665 |
PDSPxoxn |
|
B2 |
00B21974 |
SSPxDSxox |
|
B3 |
00B30CE8 |
SDPanan |
|
B4 |
00B4070A |
PSDnax |
|
B5 |
00B507A9 |
DPSDoaxn |
|
B6 |
00B616E9 |
DPSDPaoxx |
|
B7 |
00B70348 |
SDPxan |
|
B8 |
00B8074A |
PSDPxax |
|
B9 |
00B906E6 |
DSPDaoxn |
|
Ba |
00BA0B09 |
DPSnao |
|
BB |
00BB0226 |
DSno |
MERGEPAINT |
BC |
00BC1CE4 |
SPDSanax |
|
BD |
00BD0D7D |
SDxPDxan |
|
Ser |
00BE0269 |
DPSxo |
|
BF |
00BF08C9 |
DPSano |
|
C0 |
00C000CA |
PSa |
MERGECOPY |
C1 |
00C11B04 |
SPDSnaoxn |
|
C2 |
00C 21884 |
SPDSonoxn |
|
C3 |
00C3006A |
PSxn |
|
C4 |
00C40E04 |
SPDnoa |
|
C5 |
00C 50664 |
SPDSxoxn |
|
C6 |
00C 60708 |
SDPnax |
|
C7 |
00C707AA |
PSDPoaxn |
|
C8 |
00C803A8 |
SDPoa |
|
C9 |
00C 90184 |
SPDoxn |
|
CA |
00CA0749 |
DPSDxax |
|
CB |
00CB06E4 |
SPDSaoxn |
|
Código do Cliente |
00CC0020 |
S |
SRCCOPY |
CD |
00 CD 0888 |
SDPono |
|
CE |
00CE0B08 |
SDPnao |
|
FC |
00CF0224 |
SPno |
|
D0 |
00D00E0A |
PSDnoa |
|
Ambos |
00D1066A |
PSDPxoxn |
|
D2 |
00D 20705 |
PDSnax |
|
D3 |
00D307A4 |
SPDSoaxn |
|
D4 |
00D41D78 |
SSPxPDxax |
|
D5 |
00D50CE9 |
DPSanan |
|
D6 |
00D616EA |
PSDPSaoxx |
|
D7 |
00D 70349 |
DPSxan |
|
D8 |
00D 80745 |
PDSPxax |
|
D9 |
00D906E8 |
SDPSaoxn |
|
Da |
00DA1CE9 |
DPSDanax |
|
Banco de Dados |
00DB0D75 |
SPxDSxan |
|
DC |
00DC0B04 |
SPDnao |
|
DD |
00DD0228 |
SDno |
|
DE |
00DE0268 |
SDPxo |
|
A desfragmentação está ativa |
00DF08C8 |
SDPano |
|
E0 |
00E003A5 |
PDSoa |
|
E1 |
00E10185 |
PDSoxn |
|
E2 |
00E20746 |
DSPDxax |
|
E3 |
00E306EA |
PSDPaoxn |
|
E4 |
00E40748 |
SDPSxax |
|
E5 |
00E506E5 |
PDSPaoxn |
|
E6 |
00E61CE8 |
SDPSanax |
|
E7 |
00E70D79 |
SPxPDxan |
|
E8 |
00E81D74 |
SSPxDSxax |
|
E9 |
00E95CE6 |
DSPDSanaxxn |
|
Atributo estendido (EA) |
00EA02E9 |
DPSao |
|
EB |
00EB0849 |
DPSxno |
|
EC |
00EC02E8 |
SDPao |
|
ED |
00ED0848 |
SDPxno |
|
Ee |
00EE0086 |
DSo |
SRCPAINT |
FE |
00EF0A08 |
SDPnoo |
|
F0 |
00F00021 |
P |
PATCOPY |
F1 |
00F10885 |
PDSono |
|
F2 |
00F20B05 |
PDSnao |
|
F3 |
00F3022A |
PSno |
|
F4 |
00F40B0A |
PSDnao |
|
F5 |
00F50225 |
PDno |
|
F6 |
00F60265 |
PDSxo |
|
F7 |
00F708C5 |
PDSano |
|
F8 |
00F802E5 |
PDSao |
|
F9 |
00F90845 |
PDSxno |
|
Fa |
00FA0089 |
DPo |
|
Disponibilidade |
00FB0A09 |
DPSnoo |
PATPAINT |
FC |
00FC008A |
PSo |
|
FD |
00FD0A0A |
PSDnoo |
|
EO |
00FE02A9 |
DPSoo |
|
TT |
00FF0062 |
1 |
WHITENESS |
See Also
Reference
Raster Operation Codes
BitBlt
PatBlt
StretchBlt
MAKEROP4