本来用imageen已经可以实现在jpg图像上加文字解释,但是客户不是很满意,说是为了保持图片的完整性,文字不能加在jpg图片上,而要求在图片的下面再续出一行,上面加文字注释,然后再合为一个图片,我对图片处理这方面不是很了解,不知道imageen能不能实现这个功能,希望大家给予帮助!有源码更好,介绍别的控件也可以,多谢!
解决方案 »
- delphi7调用存储过程返回值???
- advstringgrid1 滚屏
- ADODB数据库问题(delphi)
- 有哪位熟悉C++的,麻烦帮我转一下结构体的定义.谢谢
- 想找一个日历控件,当选择日期后能显示当天是什么生肖日,请各位帮忙,谢谢!
- 对tchartseries控件的datasource的赋值的问题,help用的是ttable,但我实际只能用tdatasource,为何?
- 有关Foxpro的问题!
- 各位大虾~~关于一个报表打印的问题~~在线给分
- 新手问题:简简单单奉送20分
- Paradox库能实现Select语句的子查询吗?
- 请问在IntraWeb中怎么出来鼠标右键呀?
- 有没有表格中带进度条的控件?就像是CuteFtp的效果--把所有的正在下载的内容列出,中间包括进度
imageenview1.assign(image1);
imageenview1.io.bitman.cavsav.textout(x,y,'string');
imageenview1.layersadd;
imageenview1.io.loadfromjpeg(filename);
imageenview1.layers.mearg(0,1)
:)有些拼写可能不对
lable放在图片上
刷新的时候要注意把lable放在图片上
愿意帮忙的话,麻烦你写出一个完整的代码to cdsgajxlp(起名很难)
他们要求的不是把label放在图片上,而是放在图片的下面!to lextm(LeLe)
我没有描述清楚,这些图片是从数据库里读出来的多谢大家回复!
var
bmp, bmp2: TBitMap;
jpg: TJPEGImage;
TextHeight: integer;
Text: string;
aRect: TRect;
begin
bmp := TBitMap.Create;
bmp2 := TBitMap.Create;
jpg := TJPEGImage.Create;
try
jpg.LoadFromFile('e:\a.jpg');
bmp.Assign(jpg);
bmp2.Canvas.Font.Assign(self.Font);
TextHeight := bmp2.Canvas.TextHeight('A'); //获得字体高
bmp2.Width := bmp.Width;
bmp2.Height := bmp.Height + TextHeight; //设置新图像高
bmp2.Canvas.Draw(0, 0, bmp); //画上原有图像 aRect := RECT(0, bmp2.Height - TextHeight, bmp2.Width, bmp2.Height); //获得文字区域
Text := '123';
DrawText(bmp2.Canvas.Handle, pchar(Text), length(Text), aRect, DT_CENTER or DT_WORDBREAK); jpg.Assign(bmp2); //获得处理后的图像
jpg.SaveToFile('e:\a1.jpg');
finally
bmp.Free;
bmp2.Free;
jpg.Free;
end;
// canvas.Draw(0,0,bmp2);
end;