value lime_image_load (value data) { ImageBuffer buffer; Resource resource; if (val_is_string (data)) { resource = Resource (val_string (data)); } else { Bytes bytes (data); resource = Resource (&bytes); } #ifdef LIME_PNG if (PNG::Decode (&resource, &buffer)) { return buffer.Value (); } #endif #ifdef LIME_JPEG if (JPEG::Decode (&resource, &buffer)) { return buffer.Value (); } #endif return alloc_null (); }
value lime_png_decode_file (value data, value decodeData) { ImageBuffer imageBuffer; Resource resource = Resource (val_string (data)); #ifdef LIME_PNG if (PNG::Decode (&resource, &imageBuffer, val_bool (decodeData))) { return imageBuffer.Value (); } #endif return alloc_null (); }
value lime_png_decode_file (HxString path, bool decodeData) { ImageBuffer imageBuffer; Resource resource = Resource (path.__s); #ifdef LIME_PNG if (PNG::Decode (&resource, &imageBuffer, decodeData)) { return imageBuffer.Value (); } #endif return alloc_null (); }
value lime_jpeg_decode_bytes (value data, value decodeData) { ImageBuffer imageBuffer; Bytes bytes (data); Resource resource = Resource (&bytes); #ifdef LIME_JPEG if (JPEG::Decode (&resource, &imageBuffer, val_bool (decodeData))) { return imageBuffer.Value (); } #endif return alloc_null (); }
value lime_png_decode_bytes (value data, bool decodeData) { ImageBuffer imageBuffer; Bytes bytes (data); Resource resource = Resource (&bytes); #ifdef LIME_PNG if (PNG::Decode (&resource, &imageBuffer, decodeData)) { return imageBuffer.Value (); } #endif return alloc_null (); }
value lime_renderer_read_pixels (value renderer, value rect) { Renderer* targetRenderer = (Renderer*)val_data (renderer); ImageBuffer buffer; if (!val_is_null (rect)) { Rectangle _rect = Rectangle (rect); targetRenderer->ReadPixels (&buffer, &_rect); } else { targetRenderer->ReadPixels (&buffer, NULL); } return buffer.Value (); }