Форум: "Media";
Текущий архив: 2012.04.15;
Скачать: [xml.tar.bz2];
ВнизКонвертиорвание jpeg в gif. Найти похожие ветки
← →
parasolka (2008-10-31 12:51) [0]Здравствуйте. Надо сконвертировать jpeg в gif. Для этого использую компонент TGifImage из RxLib. Делаю следующим образом.
var
g: TGifImage;
b: TBitmap;
j: TJpegImage;
begin
j:=TJpegImage.Create;
b:=TBitmap.Create;
j.LoadFromFile("C:\NetExchange\2.jpg");
g:=TGifImage.Create;
g.Assign(b);
g.SaveToFile("C:\NetExchange\test.gif");
b.Free;
g.Free;
j.Free;
end
Так все работает. Проблема в том, что на практике jpeg находится в TMemoryStream. Как тогда загнать его в TBitmap? Заранее благодарен.
← →
Palladin © (2008-10-31 13:02) [1]а что, у TJPEGImage нет метода LoadFromStream ?
← →
tesseract © (2008-11-01 14:11) [2]
> Как тогда загнать его в TBitmap? Заранее благодарен.
DibNeeded смотри.
← →
CodeMaster © (2008-11-02 22:11) [3]А вот так нелегче?
procedure ConvertJPEGToGIF(Dest,Source: FileName);
var
Ext: String;
GIF: TGIFImage;
JPEG: TJPEGImage;
begin
if not FileExists(Source) then Exit;
Ext:= ExtractFileExt(Source);
if (Ext <> ".jpg") or (Ext <> ".jpeg") then Exit;
JPEG:= TJPEGImage.Create;
GIF:= TGIFImage.Create;
JPEG.LoadFromFile(Source);
GIF.Width:= JPEG.Width;
GIF.Height:= JPEG.Height;
GIF.Canvas.Draw(0,0,JPEG);
GiF.SaveToFile(Dest);
JPEG.Free;
GIF.FRee;
end;
Точно не помню какой метод у GIF ну попробуй ещё вот так
procedure ConvertJPEGToGIF(Dest,Source: FileName);
var
Ext: String;
GIF: TGIFImage;
JPEG: TJPEGImage;
Bmp1: TBitmap;
begin
if not FileExists(Source) then Exit;
Ext:= ExtractFileExt(Source);
if (Ext <> ".jpg") or (Ext <> ".jpeg") then Exit;
JPEG:= TJPEGImage.Create;
GIF:= TGIFImage.Create;
Bmp1:= TBitmap.Create;
JPEG.LoadFromFile(Source);
Bmp1.Width:= JPEG.Width;
Bmp1.Height:= JPEG.height;
Bmp1.Draw(0,0,JPEG);
GiF.Assign(BMp1);
GiF.SaveToFile(Dest);
Bmp1.Free;
JPEG.Free;
GIF.FRee;
end;
Впринципе должно работать. Не тестировал, поэтому не знаю точно.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2012.04.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.002 c