Y
yamazeki
Unregistered / Unconfirmed
GUEST, unregistred user!
我做了一个程序中间需要转换图像类型,就是bmp,jpg,gif之间互相转换,
但是发现一些问题。程序有个功能是把图像翻转(我用的是ScanLine,一行一行
读出来,在一行一行写进区),当时用的是TBitmap类型,都好使,但是把jpg或
gif转换成TBitmap类型时,在转换就不是想像的效果了。
后来我手动用Windows画笔把jpg转换成bmp当存为256色时好使(严重失真),其他的
比如说真彩24时同样出错。
我想可能时调色板的问题,然后我在程序中这样做同样出错,下面是转换的程序:
procedure TForm1.Button1Click(Sender: TObject);
var
Bmp: TBitmap;
Jpg: TJpegImage;
begin
Bmp:=TBitmap.Create;
Jpg:=TJpegImage.Create;
Jpg.LoadFromFile('xxxx');
Bmp.Assign(Jpg);//转换
Bmp.PixelFormat:=xxxx;//无论设成什么值都不行(图像翻转时都不对)
Jpg.free;
Bmp.free;
end;
各位高说帮我想想怎么办,如果我没说明白,大家提出来,如果分不够可以再加!!!
thank
但是发现一些问题。程序有个功能是把图像翻转(我用的是ScanLine,一行一行
读出来,在一行一行写进区),当时用的是TBitmap类型,都好使,但是把jpg或
gif转换成TBitmap类型时,在转换就不是想像的效果了。
后来我手动用Windows画笔把jpg转换成bmp当存为256色时好使(严重失真),其他的
比如说真彩24时同样出错。
我想可能时调色板的问题,然后我在程序中这样做同样出错,下面是转换的程序:
procedure TForm1.Button1Click(Sender: TObject);
var
Bmp: TBitmap;
Jpg: TJpegImage;
begin
Bmp:=TBitmap.Create;
Jpg:=TJpegImage.Create;
Jpg.LoadFromFile('xxxx');
Bmp.Assign(Jpg);//转换
Bmp.PixelFormat:=xxxx;//无论设成什么值都不行(图像翻转时都不对)
Jpg.free;
Bmp.free;
end;
各位高说帮我想想怎么办,如果我没说明白,大家提出来,如果分不够可以再加!!!
thank