png格式转jpg格式

    技术2022-05-19  25

        由于项目需要,需要将png格式的图片转换为jpg格式的图片,方法如下:

          MyImg := TMemoryStream.Create;       MyImg.LoadFromFile(Local_path+Img);       MyImg.Position := 0;       if MyImg.Size <= 0 then       begin         MyImg.Free;         continue;       end;       MyImg.ReadBuffer(lBuf, 2);       if lBuf = $4D42 then       begin

             bmp := TBitmap.Create;

             jpg := TJpegImage.Create; //引入单元jpeg

             try          bmp .LoadFromStream(Local_path+Img);

             jpg.Assign(bmp);          jpg.SaveToFile(Local_path+Img);

             finally

                FreeAndNil(jpg);

                FreeAndNil(bmp);

             end;

          end       else       //如果是png格式的图片,先转化为bmp格式,然后再转化为jpg(直接从png到jpg会报错)       if lBuf = $5089 then       begin         png := TPNGObject.Create; //引入单元pngimage         bmp := TBitmap.Create;         jpg := TJpegImage.Create;         try           png.LoadFromFile(Local_path+Img);           bmp.Assign(png);           jpg.Assign(bmp);           jpg.SaveToFile(Local_path+Img);         finally           FreeAndNil(png);           FreeAndNil(bmp);           FreeAndNil(jpg);         end;       end;       MyImg.Destroy;


    最新回复(0)