图片如何合并?(急) 图片如何合并?(急) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用gdi+ 新建一张图片然后把两张图片画到新的里面,网上有gdi+开发包 记得有个drawimage函数,参数是源图片,原图片区域,目标图片区域 简单写了一下,你看看,原理就是这样的var g:TGPGraphics; img:TGPImage; bitmap:TBitmap;begin img:= TGPImage.Create('D:\120808091111289.jpg'); bitmap:= TBitmap.Create; bitmap.width:=100; bitmap.Height:=100; g:= TGPGraphics.Create(bitmap.Canvas.Handle); g.DrawImage(img,10,10,10,10); bitmap.SaveToFile('d:\123.bmp'); bitmap.Free; img.Free; g.Free;end; 阿发伯发的这个不知道行不行,里面有几个pas你加到你的项目里然后再引用就可以了,如果他这个不好使留下email我发给你一个http://download.csdn.net/source/297704 请把问题说清楚,是拼合,还是叠加,如果是拼合,是横向还是纵向?如果是叠加,Alpha多大? 图片合并与拆分我以前都是使用opencv来做的,大批量处理的时候gdi+的速度慢些 是合并,如并列合并hongqi162 不行啊email: [email protected] var g:TGPGraphics; img,img2:TGPImage; bitmap:TBitmap; destRect:TGPRect;begin //--创建目标图片大小为300*600 bitmap:= TBitmap.Create; bitmap.width:=600; bitmap.Height:=300; //--加载源图片1 img:= TGPImage.Create('D:\120808091111289.jpg'); //--加载源图片2 img2:= TGPImage.Create('D:\120808091111289.jpg'); //--建立TGpGraphics g:= TGPGraphics.Create(bitmap.Canvas.Handle); //--设置源图片1需要拷贝的区域及在目标图片中显示的位置 destRect.X:=0; destRect.Y:=0; destRect.Height:=300; destRect.Width:=300; g.DrawImage(img,destRect,0,300,300,300,UnitPixel); //--设置源图片2需要拷贝的区域及在目标图片中显示的位置 destRect.X:=300; destRect.Y:=0; destRect.Height:=300; destRect.Width:=300; g.DrawImage(img2,destRect,300,0,300,300,UnitPixel); //--保存图片 bitmap.SaveToFile('d:\123.bmp'); bitmap.Free; img.Free; img2.Free; g.Free;end; hongqi162 用bitmap图片变成很大了,就是我001.jpg 002.jpg大小才700多K,生成跟001.jpg一样大后,图片变成了10几M 求多线程解决方案:TCP通信,一个客户端连多个服务端 runtime error 204 at 004026f4错误 请各位大虾帮帮小弟吧!! 程序在对数据库操作时,如何随时中断? 隐藏桌面问题 有没有办法提供WebBrowser的下载速度?? 急 关于数据库异常处理的问题 d7一个我很挠头的问题 初学者的问题,如何删除adodataset的所有记录? 怎样读取命令行参数?????? 提问:一个按钮,两个EDIT,点按钮1时,读取EDIT1 里的八位数转换为16进制并且加3132333435363738
var
g:TGPGraphics;
img:TGPImage;
bitmap:TBitmap;
begin
img:= TGPImage.Create('D:\120808091111289.jpg');
bitmap:= TBitmap.Create;
bitmap.width:=100;
bitmap.Height:=100; g:= TGPGraphics.Create(bitmap.Canvas.Handle);
g.DrawImage(img,10,10,10,10);
bitmap.SaveToFile('d:\123.bmp');
bitmap.Free;
img.Free;
g.Free;end;
http://download.csdn.net/source/297704
hongqi162 不行啊
email: [email protected]
g:TGPGraphics;
img,img2:TGPImage;
bitmap:TBitmap;
destRect:TGPRect;
begin
//--创建目标图片大小为300*600
bitmap:= TBitmap.Create;
bitmap.width:=600;
bitmap.Height:=300;
//--加载源图片1
img:= TGPImage.Create('D:\120808091111289.jpg');
//--加载源图片2
img2:= TGPImage.Create('D:\120808091111289.jpg');
//--建立TGpGraphics
g:= TGPGraphics.Create(bitmap.Canvas.Handle);
//--设置源图片1需要拷贝的区域及在目标图片中显示的位置
destRect.X:=0;
destRect.Y:=0;
destRect.Height:=300;
destRect.Width:=300;
g.DrawImage(img,destRect,0,300,300,300,UnitPixel);
//--设置源图片2需要拷贝的区域及在目标图片中显示的位置
destRect.X:=300;
destRect.Y:=0;
destRect.Height:=300;
destRect.Width:=300;
g.DrawImage(img2,destRect,300,0,300,300,UnitPixel);
//--保存图片
bitmap.SaveToFile('d:\123.bmp');
bitmap.Free;
img.Free;
img2.Free;
g.Free;
end;
就是我001.jpg 002.jpg大小才700多K,生成跟001.jpg一样大后,图片变成了10几M