GIF Format
Uses ..., axctrls;
procedure TForm1.Open1Click(Sender: TObject);
var
f : TFileStream;
graphic : TOleGraphic;
begin
if OpenDialog1.Execute then
begin
graphic := TOleGraphic.Create;
f := TFileStream.Create (OpenDialog1.FileName,
fmOpenRead or fmShareDenyNone);
try
graphic.LoadFromStream(f);
Image1.Picture.Assign(graphic);
finally
f.Free
end
end
end;
え?これだけで読み込みできるの?
考えてみれば当然のような話ではあるけど。
TOleGraphicはOLEPRO32.DLLというActiveXのラッパーという事ですが、
OLEPRO32.DLLは Win95 SP2 以降はOS標準で使用可能、
Vistaでもサポートされるという事なので普通に使う分には困りませんわな。
Sharakuでメディアンカット誤差拡散減色もできるようになったので
GIF保存を入れようと思い、TGIFImageを入れてみる。
へぇ、このクラス、減色ルーチンも入ってたんだ。
別にGIF保存でなくてBMPで保存する時も減色ルーチンだけ使うってのもできますね。
で、使ってみてわかったのだけど、上のルーチンだとアスペクト比が変わってしまいますね。
どこか設定がおかしいのだろうか。
で、TGIFImageも一部の誤差拡散係数、数値がおかしくなって変なムラニなってしまう時が。
.NET Framework 対応にするならGDI+を使って、こちらの方法で。
最終更新:2007年01月24日 10:20