请给点Delphi 的代码 谢谢
解决方案 »
- oracle数值变量的插入问题
- delphi 调用 vc DLL 的问题?2天了,急啊。。。。。。。。
- 请问谁有Chart和DBChart的教程,我用不好这两个控件。
- (急)dephi中的嵌套子查询问题
- 有关香港特区政府23条立法的感想。
- ImageEn保存TIF后,文件不能查看
- 两张表的问题
- 怎样取得本机的真实IP地址(不要只取出127.0.0.1)?还有怎样取得局域网中其他计算机的IP?
- 有关TDateTimePicker控件的问题!
- 求助:Delphi开发组织架构图(族谱的亲系图)
- 奇怪了,popupmenu里面添加的菜单,无法自动根据文字匹配宽度么?为什么文字右边有一大块空白的啊
- DELPHI2009的TTrayIcon最小化后,怎么在任务栏还有图标啊
var
Jpeg : TJPEGImage;
Bmp : TBitmap;
begin
Bmp := TBitmap.Create;
try
Bmp.LoadFromFile(BmpFileName);
Jpeg := TJPEGImage.Create;
try
Jpeg.Assign(Bmp);
Jpeg.Compress;
Jpeg.SaveToFile(Form4.SavePictureDialog1.FileName);
finally
Jpeg.Free;
end;
finally
Bmp.Free;
end;
end;
var
Bitmap : TBitmap;
GIF : TGIFImage;
begin
Bitmap := TBitmap.Create;
try
// Load the bitmap that will be converted
Bitmap.LoadFromFile(BmpFileName);
// Display the bitmap
ImageBMP.Picture.Assign(Bitmap);
// Clear previous GIF view
ImageGIF.Picture.Assign(nil);
GIF := TGIFImage.Create;
try
GIF.OnProgress := OnProgress;
// Convert the bitmap to a GIF
GIF.Assign(Bitmap);
// Save the GIF
GIF.SaveToFile('test.gif');
// Display the GIF
ImageGIF.Picture.Assign(GIF);
finally
GIF.Free;
end;
finally
Bitmap.Free;
end;
end;
http://www.ccrun.com/view.asp?id=158 然后:
C/C++ code// 将N个位图合并成一个GIF图像
void __fastcall TForm1::Button2Click(TObject *Sender)
{
TGIFImage *gif = new TGIFImage();
Graphics::TBitmap *bmp = new Graphics::TBitmap;
try
{
bmp->LoadFromFile(ExtractFilePath(ParamStr(0)) + "Images\\1.bmp");
gif->Add(bmp); bmp->LoadFromFile(ExtractFilePath(ParamStr(0)) + "Images\\2.bmp");
gif->Add(bmp); bmp->LoadFromFile(ExtractFilePath(ParamStr(0)) + "Images\\3.bmp");
gif->Add(bmp); gif->SaveToFile("C:\\ccrun\\234.gif");
Image1->Picture->Assign(gif);
}
__finally
{
delete bmp;
delete gif;
}
}
另外,如果想自己处理的话,就先要了解gif的数据结构,清楚了这个,操作gif还不容易吗TGifImage组件应该是可以的,你打不开,不知是什么意思,是用image打不开,还是在windows本身就无法浏览呢
GIF文件格式
procedure TMain.Button2Click(Sender: TObject);
var
gif:TGIFImage;
bmp:TBitmap;
begin
try
bmp:=TBitmap.Create();
gif:=TGIFImage.Create();
bmp.LoadFromFile(ExtractFilePath(ParamStr(0))+'db\1.bmp');
gif.Add(bmp);
bmp.LoadFromFile(ExtractFilePath(ParamStr(0))+'db\2.bmp');
gif.Add(bmp);
bmp.LoadFromFile(ExtractFilePath(ParamStr(0))+'db\3.bmp');
gif.Add(bmp);
// gif.SaveToFile(ExtractFilePath(ParamStr(0))+'123.gif');{加上系统路径报错,奇怪了}
gif.SaveToFile('123.gif');
Image1.Picture.LoadFromFile('123.gif');{加上系统路径报错,奇怪了}
finally
bmp.Free;
gif.Free;
end;
end;这个不能控制帧的显示速度,如果lz想要写的更详细,请参考11#的介绍。