Or
 
Put图形语句的参数,它使用逐位Or作为blitting方法

语法

Put [ target , ] [ STEP ] ( x ,y ), source [ ,( x1 ,y1 )-( x2 ,y2 ) ], Or

参数

Or
需要。

说明

Or方法使用逐位Or功能将每个源像素与相应的目标像素相结合。其结果作为目标像素输出。
此方法适用于所有图形模式。没有掩码颜色,虽然0RGBA(0, 0, 0, 0)在全色模式下)的颜色值将不起作用,因为Or的行为。

在全色模式下,每个组件(红色,绿色,蓝色和半透明)都保留在一组离散的位中,因此可以通过确保其他的所有值频道设为0.

例子

''打开图形窗口
ScreenRes 320, 200, 16

''创建3个包含红色,绿色和蓝色圆圈的精灵
Const As Integer r = 32
Dim As Any Ptr cr, cg, cb
cr = ImageCreate(r * 2 + 1, r * 2 + 1, RGBA(0, 0, 0, 0))
cg = ImageCreate(r * 2 + 1, r * 2 + 1, RGBA(0, 0, 0, 0))
cb = ImageCreate(r * 2 + 1, r * 2 + 1, RGBA(0, 0, 0, 0))
Circle cr, (r, r), r, RGB(255, 0, 0), , , 1, f
Circle cg, (r, r), r, RGB(0, 255, 0), , , 1, f
Circle cb, (r, r), r, RGB(0, 0, 255), , , 1, f

''把精灵放在三个不同的多层面
''水平,中间重叠
Put (146 - r, 108 - r), cr, Or
Put (174 - r, 108 - r), cg, Or
Put (160 - r,  84 - r), cb, Or

''释放精灵使用的内存
ImageDestroy cr
ImageDestroy cg
ImageDestroy cb

''关闭之前暂停程序
Sleep


与QB差别

  • 没有

参考