cximage保存图片0字节错误问题以及解决。

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

这几天自己在弄一个图片合并的问题,发现一直出现失败,达不到自己想要的效果。后来在网上借鉴了一部分代码,发现最终保存下来的合并的图片大小为0字节。

	CxImage img1,img2,img3;
    int h1,w1,h2,w2,h3,w3,bpp;

    img1.Load("1.jpg",CXIMAGE_FORMAT_JPG);
    img2.Load("2.jpg",CXIMAGE_FORMAT_JPG);

    h1=img1.GetHeight();
    w1=img1.GetWidth();

    h2=img2.GetHeight();
    w2=img2.GetWidth();

    h3=h1;
    w3=w1+w2;

    bpp=img1.GetBpp();

    img3.Create(w3,h3,bpp);
    img3.MixFrom(img1,0,0);
    img3.MixFrom(img2,w1,0);

    img3.Save("3.jpg",CXIMAGE_FORMAT_JPG);

在这里插入图片描述

最后发现了是图片的原因:
在这里插入图片描述
在这里插入图片描述
分析:cximage有些版本对不常用的图片位深度支持不好。建议使用彩图测试。

首先选取了2张24位深度的彩图:
注意:如果在合并的时候两张图片的长和宽如果不一样,建议重新设置一下大小
img1.Resample(500,500);
img2.Resample(500,500);
在这里插入图片描述
在这里插入图片描述
合并之后就变成了8位的灰度图。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

VS2010CxImage读入各种图片格式后在内存中转换为HBITMAP位图 最近自学游戏引擎设计,希望能将各种图片格式读入内存后转为HBITMAP后处理,四处搜寻资料无果,最终参考以下两篇博文自己搞定了 http://blog.csdn.net/wu_xiangwei/article/details/5096529 http://www.cnblogs.com/xiangism/archive/2012/10/16/2725692.html 废话不多 阅读详情

相关推荐

关于Python爬取图片时,某些图片在文件夹中显示为0字节问题

爬虫与正则实在是太多坑了,听我细细道来。

qq_60300168的博客 1749

Cximage常见错误解决办法集锦

1.VC6中使用CxImage这个库.  编译了他的源代码,得到几个.lib 我在VC6中引入这几个lib.然后编译,没报错!  create一个cximage的时候,编译就报错。   下面是错误信息: Creating library Debug/Test.lib and object Debug/Test.exp cximage.lib(ximaraw.obj) : error LN...

weixin_34025051的博客 1014

VC6.0CxImage可以将图片保存成各种格式,我已经验证过,很好用,如果不行,可以留言讨论

CxImage类库是一 个优秀的图像操作类库。它可以快捷地存取、显示、转换各种图像。有的读者可能说,有那么多优秀的图形库,如OpenIL,FreeImage, PaintLib等等,它们可谓是功能强大,齐全,没必要用其它的类库。但我要说,这些类库基本上没有免费的,使用这些类库,你要被这样那样的许可协议所 束缚。在这点上,CxImage类库是完全免费的。另外,在使用上述类库时,你会遇到重重麻烦。因为它们大部分是平台无关的,且用C语言写成,有的还夹杂 着基本的C++ wrapper和成堆德编译选项的声明需要你去处理。而CxImage类库在这方面做得很好。还有让我最看好的,就是作者完全公开了源代码。相对于那些封 装好的图形库和GDI+来说,这一点使我们可以进一步学习各种编解码技术,而不再浮于各种技术的表面。 CxImage是一个可以用于MFC 的C++类,可以打开,保存,显示,转换各种格式的图像文件,比如BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG, J2K 等格式的文件。可以实现BMPJPG,PNG TIFF格式等等的转换。 既可以实现图像文件的类型转换,也可以实现在内存图像数据的类型转换,并且使用很方便。

CxImage合并图片

CxImage合并图片就是这么简单:   //左右合并两张图片,合并后的图片与原图等高;上下合并可类推。        //如果只是在图1上嵌入图2,处理后的图还是和图1的高宽一样。则只需要用MixFrom函数。CxImage img1,img2,img3;int h1,w1,h2,w2,h3,w3,bpp;img1.Load("F://1.jpg");img2.L

1483

深入理解BMP图片数据存储方式

bmp中RGB数据存储方式

liu2921603708的博客 6165

CxImage在onSaveDocument()中保存图片

CxImage保存图片,遇到个问题保存后的图片0字节,代码如下:

cyh706510441的专栏 1253

cximage合并4张图片

需要注意的是:建议用24位彩图合并,不然会出现保存图片0字节错误 直接上代码: void CMergePicturesDemoDlg::OnBnClickedBtnMergepic() { // TODO: 在此添加控件通知处理程序代码 CxImage img1,img2; int img1_wide,img1_height,img2_wide,img2_height; int bpp...

Alan_Program的博客 925

CxImage库----整理

RGBQUAD 是一个表示32bit像素值的结构体。

liulina603的专栏 1822

CxImage开源库在VS2013的编译和使用

一、cximage600_full在VS2013编译和使用 1、编译         (1)下载后解压缩,直接打开根目录下的 CxImgLib.dsw文件。版本转换完成之后,在编译之前先将每个工程属性的字符集由原先的使用Unicode字符集改为使用多字节字符集,生成解决...

monk1992的博客 780

在VC++中使用CxImage库读写图像实现像素操作

VC++中使用CxImage读写图像实现像素操作与效果演示

关注微信公众号【OpenCV学堂】 6492

CxImage图像处理库实战:从核心架构到工程集成的完整指南

图像处理是计算机视觉和软件开发中的基础技术,涉及图像的加载、转换、编辑与保存等核心操作。其原理在于通过算法对像素数据进行解析与重构,实现格式兼容与视觉变换。在C++生态中,除了OpenCV这类综合性计算机视觉库,还存在像CxImage这样专注于图像I/O与基础处理的轻量级解决方案。CxImage以其强大的格式支持(如JPEG、PNG、TIFF)和插件式编解码器设计,在Windows桌面应用、MFC项目及处理遗留图像格式时展现出独特价值。本文通过解析其基于对象的封装、RAII内存管理及关键API,并结合图像加

weixin_30588675的博客 300

curl下载图片

curl下载图片

梨子心 5704

如何将图片变成零字节

我们先找来一张图片,就拿Google的logo来用吧:  300) {this.resized=true; this.width=300;}" />  看它的属性,可以知道它是一个gif格式图片,大小约为8.35KB,很明显,它并不是零字节大小。但是通过下面的方法,即可将它的变为零字节大小,而且还可以正常打开浏览。不是开玩笑,你也可以做得到。  下面是方法:  (注一:转载请注明出自“幻灭的

净心编程 4124

linux上传文件为0字节,linux – 配置vsftpd匿名上传.创建文件但冻结为0字节

sudo apt-get install vsftpd之后的ubuntu上的vsftpd然后按照附带的/etc/vsftpd.conf文件进行配置.匿名ftp允许cd直接上传并允许把myfile.txt放在服务器上创建但是然后客户端挂起,永远不会继续.服务器上的文件保持在0字节.这是文件夹和权限:root@support:/home/ftp# ls -ld .drwxr-xr-x 3 root r...

weixin_42388631的博客 948

C++CXimage合併帶透明信息的PNG圖片

最近接到一個任務,其中有個步驟就將幾張部份透明的png圖片合併為一個 出現問題:檔原本北京透明的圖片疊加起來后就不再透明,導致上面的圖將下面的圖全部覆蓋,最後只能看到最後一張 解決方案:剛開始的時候我用的是MixFrom函數,費了半天功夫一直搞不定。在網上找了半天也沒看到解決方法。 後來講CXimage的文檔看了一遍,發現Mix也是可以合併圖片的,於是逐個參數試一試。 CxImage im

choueric的专栏 2530
上一篇: cximage配置环境与实例
下一篇: cximage合并4张图片
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值