各位朋友,我在编写将文字转化成图像时,遇到了以下的一个问题,我的设想是:将文字以预先设定的字体、大小、字体颜色、背景颜色等写到一个图像中,可在实际编写中,我怎么也不能改变该图像的背景颜色,其它的字体、大小、字体颜色等都可以解决,唯独这里把我难住了,我仔细地查看了Tcanvas对象,也修改了属性Brush的Style属性为bsSolid,Brush的Color为我想要设定的颜色,可没有用,图像的背景颜色照样为白色。
下面列出我的部分源程序,请各位帮帮忙,给予指点。
procedure TForm1.TxtToPic(TxtStr:TStrings);
var Pic:Tpicture; i:Integer;
begin
Pic:=TPicture.Create;
Pic.Bitmap.Canvas.Font.Assign(FFont);
pic.bitmap.canvas.brush.Style:=bsSolid;
Pic.Bitmap.Canvas.Brush.Color:=clred;
......
......
for i:=0 to TxtStr.Count-1 do
begin
pic.Bitmap.canvas.TextOut(0,ph,TempMemo.lines[i]);
ph:=ph+LineHeight;
end;
pic.SaveToFile('TempPic.bmp');
pic.Free;
end;
下面列出我的部分源程序,请各位帮帮忙,给予指点。
procedure TForm1.TxtToPic(TxtStr:TStrings);
var Pic:Tpicture; i:Integer;
begin
Pic:=TPicture.Create;
Pic.Bitmap.Canvas.Font.Assign(FFont);
pic.bitmap.canvas.brush.Style:=bsSolid;
Pic.Bitmap.Canvas.Brush.Color:=clred;
......
......
for i:=0 to TxtStr.Count-1 do
begin
pic.Bitmap.canvas.TextOut(0,ph,TempMemo.lines[i]);
ph:=ph+LineHeight;
end;
pic.SaveToFile('TempPic.bmp');
pic.Free;
end;
解决方案 »
- 如何控制鼠标在屏幕中的一点,自动点击鼠标啊?
- 如何判断WEB网站是否可以正常访问和DNS域名服务器解析正常的问题!急
- 25,110,6400端口可任意连接?
- 散分,接分,100分相送,来者有分--谈谈DELPHI开发感想,最好事框架方面的东东
- 高分贴,解决后立即结分。关于操作文件夹的类似问题,请进~~(可加分)
- 用软件如何发短信?
- 密码登录界面代码中用Assignfile来处理密码问题的问题又如何不用窗体向导创建DataModule?
- 欢迎参予讨论:能不能用Opengl开发三维CAD?
- 如何让StringGrid自动换行
- rzpagecontrol中关闭from数据未保存提醒
- 已经存在一个EXE文件能不能把他的图标导出为ICO格式?
- 如何用Delphi自动连接ODBC ?
这样画出的文字就能透明在背景上了。
pic: tpicture;
begin
try
pic := tpicture.Create;
pic.Bitmap.Height := 50;
pic.Bitmap.Width := 200;
pic.Bitmap.Canvas.Brush.Color := clRed;
pic.Bitmap.Canvas.Rectangle(pic.Bitmap.Canvas.ClipRect);
pic.Bitmap.Canvas.TextOut(10,20,'hello naughtyboy');
pic.SaveToFile('c:\pic.bmp');
finally
pic.Free;end;