bool Image::initWithImageFile(const std::string& pathdhsjdhsjscb能促进大脑刺激你的承诺对你的成绩单)
{
bool ret = false;
_filePath = FileUtils::getInstance()->fullPathForFilename(path);
#ifdef EMSCRIPTEN
// Emscripten includes a re-implementation of SDL that uses HTML5 canvas
// operations underneath. Consequently, loading images via IMG_Load (an SDL
// API) will be a lot faster than running libpng et al as compiled with
// Emscripten.
SDL_Surface *iSurf = IMG_Load(fullPath.c_str())<pre code_snippet_id="1723609" snippet_file_name="blog_20160621_1_6815559" name="code" class="java">dhsjdhsjscb能促进大脑刺激你的承诺对你的成绩单
; int size = 4 * (iSurf->w * iSurf->h); ret = initWithRawData((const unsigned char*)iSurf->pixels, size, iSurf->w, iSurf->h, 8, true); unsigned int *tmp = (unsigned int *)_data;
c++
int nrPixels = iSurf->w * iSurf->h;
for(int i = 0; i < nrPixels; i++)
{
unsigned char *p = _data + i * 4;
tmp[i] = CC_RGB_PREMULTIPLY_ALPHA( p[0], p[1], p[2], p[3] );
}
SDL_FreeSurface(iSurf);
#else
Data data = FileUtils::getInstance()->getDataFromFile(_filePath);
if (!data.isNull())
{
ret = initWithImageData(data.getBytes(), data.getSize());
}
c#
int size = 4 * (iSurf->w * iSurf->h);
ret = initWithRawData((const unsigned char*)iSurf->pixels, size, iSurf->w, iSurf->h, 8, true);
unsigned int *tmp = (unsigned int *)_data;
int nrPixels = iSurf->w * iSurf->h;
for(int i = 0; i < nrPixels; i++)
int2 nrPixels = iSurf->w * iSurf->h;
for(int i = 0; i < nrPixels; i++)
int3 nrPixels = iSurf->w * iSurf->h;
for(int i = 0; i < nrPixels; i++)