Base64 Images

70 views
Skip to first unread message

BareK

unread,
Apr 24, 2018, 8:17:04 AM4/24/18
to DroidScript
Is it possible to feed an image control with a base64 encoded image ?

Something like:

app.CreateImage( "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAySURBVEhL7c0xEQAgDAAxtKCnZusQCZnY/i57zt35qoAKqIAKqIAKqIAKqIAK6HOw8wC78Hw9Xl1J9AAAAABJRU5ErkJggg==" );

I tried many things but none seems to work (except using a webview, but this is not what I am looking for).

Thanks in advance :)

alex.symbroson

unread,
Apr 24, 2018, 8:37:59 AM4/24/18
to DroidScript
For me following works:

img = app.CreateImage( null,.3,.15);
img.SetPixelData("iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAySURBVEhL7c0xEQAgDAAxtKCnZusQCZnY/i57zt35qoAKqIAKqIAKqIAKqIAK6HOw8wC78Hw9Xl1J9AAAAABJRU5ErkJggg" );
lay.AddChild( img );

BareK

unread,
Apr 25, 2018, 3:28:14 AM4/25/18
to DroidScript
Thanks for the quick reply ;)

It doesn't work on my device (DS 1.61, OS CyanogenMod 13):
  • App.CreateImage( null0.3, 0.15, , , )
  • -> #1
  • Img.SetPixelData( iVBORw0KGgoAAAANSUhEUgAAACAAAAAg..., , , )
  • WARNING: Img.SetPixelData() failed! (Attempt to invoke virtual method 'java.lang.String java.lang.String.toLowerCase(java.util.Locale)' on a null object reference)

But searching the forum for SetPixelData it appears that it is working with the alpha version.

Now I know what function to track, thanks ;)

Hope it will work soon!

alex.symbroson

unread,
Apr 25, 2018, 3:32:04 AM4/25/18
to DroidScript
As Steve already mentioned you should try using SetPixelData(data,-1,-1,"") so that options is not undefined

BareK

unread,
Apr 25, 2018, 11:19:01 AM4/25/18
to DroidScript
Thanks again :)

I tried many things but always the same result.
I even tried to previously create an existing image then setting the pixel data, with no success at all:

img = app.CreateImage( "/Sys/Img/Hello.png" );
img
.SetPixelData( "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAySURBVEhL7c0xEQAgDAAxtKCnZusQCZnY/i57zt35qoAKqIAKqIAKqIAKqIAK6HOw8wC78Hw9Xl1J9AAAAABJRU5ErkJggg", 1.0, 1.0, "not_empty" );
  • App.CreateImage( null0.3, 0.15, , , )
  • -> #1
  • Img.SetPixelData( iVBORw0KGgoAAAANSUhEUgAAACAAAAAg..., , , )
  • WARNING: Img.SetPixelData() failed! (Attempt to invoke virtual method 'java.lang.String java.lang.String.toLowerCase(java.util.Locale)' on a null object reference)

So I believe this might be something that has been solved in the current alpha :)
Reply all
Reply to author
Forward
0 new messages