简体   繁体   English

使用wxBitmap :: NewFromPNGData方法创建位图会导致wxWidgets 3.0中的断言

[英]Creating a bitmap using wxBitmap::NewFromPNGData method causes assert in wxWidgets 3.0

I created a wxBitmap using wxBitmap::NewFromPNGData and IsOk() method returned false. 我使用wxBitmap::NewFromPNGData创建了一个wxBitmap,并且IsOk()方法返回了false。 My code is 我的代码是

static const unsigned char image_png[] = ...;
auto bitmap = wxBitmap::NewFromPNGData(image_png, WXSIZEOF(image_png));

bitmap.IsOk() returns false What is wrong with this code? bitmap.IsOk()返回false此代码有什么问题? Is there another way to create bitmaps from hardcoded pngs? 还有另一种方法可以从硬编码的png创建位图吗?

Unless your wxWidgets was built without PNG support (which is very unlikely, as you need to explicitly disable it for this, it is enabled by default), the only explanation is the obvious one: your image_png doesn't contain valid data in PNG format. 除非您的wxWidgets是在没有PNG支持的情况下构建的(这是极不可能的,因为您需要为此明确禁用它,否则默认情况下已启用),唯一的解释是显而易见的:您的image_png不包含PNG格式的有效数据。 Did you check that it hasn't got corrupted somehow? 您是否检查了它是否未损坏? How did you create image_png ? 您是如何创建image_png Did you use misc/scripts/png2c.py from wxWidgets sources or some other way? 您是否使用wxWidgets来源中的misc/scripts/png2c.py或其他方式?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM