c++builder 代码压缩图片后,可不可以保留Exif信息

a348290889 2013-03-13 03:22:14
压缩图片后,Exif信息丢失
我的压缩代码如下
AnsiString TfrmEqpManage::Compress(AnsiString FileName)
{
TJPEGImage *pJpg = new TJPEGImage();
//读取源图片
pJpg->LoadFromFile(FileName);

//当图片的像素小于800*600时,则不需要压缩
if ((int)(pJpg->Width * pJpg->Height) < (800 * 600))
{
return FileName;
}

//将图片压缩
pJpg->DIBNeeded();
//当数字越大,压缩之后的图片越清晰,反之
pJpg->CompressionQuality = 75;
pJpg->Compress();

//将压缩图片的图片保存
int pos = FileName.Pos(".jpg");
if (0 == pos)
{
pos = FileName.Pos(".JPG");
}
FileName.Delete(pos, 4);
FileName += "_comp.jpg";
pJpg->SaveToFile(FileName);
return FileName;
}
...全文
145 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
我不懂电脑 2013-03-14
  • 打赏
  • 举报
回复
估计是版本老了,不支持Exif信息,把Exif信息当无效信息丢了
ccrun.com 2013-03-14
  • 打赏
  • 举报
回复
TJPEGImage类木有这功能,考虑用GDI+吧。
dataxdata 2013-03-13
  • 打赏
  • 举报
回复
不行就压缩后再写进去

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧