I’ve been encoding/decoding images between java and haxe like this:
//java
public static String encodeToBase64(Bitmap image, Bitmap.CompressFormat compressFormat, int quality)
{
ByteArrayOutputStream byteArrayOS = new ByteArrayOutputStream();
image.compress(compressFormat, quality, byteArrayOS);
return Base64.encodeToString(byteArrayOS.toByteArray(), Base64.DEFAULT | Base64.NO_WRAP);
}
//haxe
private static var BASE_64_CHARS:String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
private static function base64Decode (base64:String):ByteArray
{
base64 = StringTools.trim (base64);
base64 = StringTools.replace (base64, "=", "");
var base64Encoder :BaseCode= new BaseCode (Bytes.ofString (BASE_64_CHARS));
var bytes = base64Encoder.decodeBytes (Bytes.ofString (base64));
return ByteArray.fromBytes (bytes);
}