首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

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

2013-04-20 
c++builder 代码压缩图片后,可不可以保留Exif信息压缩图片后,Exif信息丢失我的压缩代码如下AnsiString Tfr

c++builder 代码压缩图片后,可不可以保留Exif信息
压缩图片后,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;
}
[解决办法]
估计是版本老了,不支持Exif信息,把Exif信息当无效信息丢了
[解决办法]
TJPEGImage类木有这功能,考虑用GDI+吧。

热点排行