图形问题多多,高手请进(200分)

  • 主题发起人 主题发起人 117924
  • 开始时间 开始时间
1

117924

Unregistered / Unconfirmed
GUEST, unregistred user!
1.如何将一目录下的图形文件如ACDSee一样一个个按小图片显示。
2。如何在一图片中加入文字,文字背景为图片。
3。如何在一图片中嵌入另一图片,但只嵌图片中不为黑色的部分。
 
1、那是缩略图,你搜索“缩略图”,有你要的答案;

2、SetBkMode(Canvas.Handle,TRANSPARENT);
Canvas.TextOut(x,y,'......');

3、你的嵌入是什么意思?
 
画一个去除背景的bmp在另一个canvas.
procedure DrawTrans(DestCanvas: TCanvas; X,Y: smallint; SrcBitmap:
TBitmap; AColor: TColor);
var ANDBitmap, ORBitmap: TBitmap;
CM: TCopyMode;
Src: TRect;
begin
ANDBitmap:= nil;
ORBitmap:= nil;
try
ANDBitmap:= TBitmap.Create;
ORBitmap:= TBitmap.Create;
Src := Bounds(0,0, SrcBitmap.Width, SrcBitmap.Height);
with ORBitmap do begin
Width:= SrcBitmap.Width;
Height:= SrcBitmap.Height;
Canvas.Brush.Color := clBlack;
Canvas.CopyMode := cmSrcCopy;
Canvas.BrushCopy(Src, SrcBitmap, Src, AColor);
end;
with ANDBitmap do begin
Width:= SrcBitmap.Width;
Height:= SrcBitmap.Height;
Canvas.Brush.Color := clWhite;
Canvas.CopyMode := cmSrcInvert;
Canvas.BrushCopy(Src, SrcBitmap, Src, AColor);
end;
with DestCanvas do begin
CM := CopyMode;
CopyMode := cmSrcAnd;
Draw(X,Y, ANDBitmap);
CopyMode := cmSrcPaint;
Draw(X,Y, ORBitmap);
CopyMode := CM;
end;
finally
ANDBitmap.Free;
ORBitmap.Free;
end;
end;
会不会用??应该没问题了吧.
再不行给我信箱
给你发例子.
 
接受答案了.
 
后退
顶部