transblt.c
来自「一个类似windows」· C语言 代码 · 共 35 行
C
35 行
#include "../vgaddi.h"
#include "../vgavideo/vgavideo.h"
#include "brush.h"
#include "bitblt.h"
#define NDEBUG
#include <debug.h>
BOOL STDCALL
DrvTransparentBlt(SURFOBJ* Dest,
SURFOBJ* Source,
CLIPOBJ* Clip,
XLATEOBJ* ColorTranslation,
RECTL* DestRect,
RECTL* SourceRect,
ULONG TransparentColor,
ULONG Reserved)
{
LONG dx, dy, sx, sy;
dx = abs(DestRect->right - DestRect->left);
dy = abs(DestRect->bottom - DestRect->top);
sx = abs(SourceRect->right - SourceRect->left);
sy = abs(SourceRect->bottom - SourceRect->top);
if(sx<dx) dx = sx;
if(sy<dy) dy = sy;
// FIXME: adjust using SourceRect
DIB_TransparentBltToVGA(DestRect->left, DestRect->top, dx, dy, Source->pvScan0, Source->lDelta, TransparentColor);
return TRUE;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?