Help converting python one-liner...

Andreas Bergendal andreas.bergendal at gmail.com
Thu Apr 25 10:57:12 EDT 2024


The problem may be that base64 encoding inserts line breaks after every 76
chars (a remnant from terminal monitor width restrictions, apparently).
I ran into this a while ago, and cleaning the encoded string with “replace
cr with empty in tString” solved it for me.
I don’t think any textEncode/Decode should be needed after that (Python is
a different animal after all… :)

/Andreas

ons 24 apr. 2024 kl. 20:46 skrev David Bovill via use-livecode <
use-livecode at lists.runrev.com>:

> I need to put encodeImageData into json (which is utf-8) and then post it
> to the api. I'm not sure what aspects of base64 encoding would not be utf8
> compatible... seem to remember there are some quirks there to be aware of.
> The python code does  the decode("utf-8") step at the end - so I guess
> there is some issue with raw base64 encoding in json?
>
> On Wed, 24 Apr 2024 at 19:26, Paul Dupuis via use-livecode <
> use-livecode at lists.runrev.com> wrote:
>
> > On 4/24/2024 1:43 PM, David Bovill via use-livecode wrote:
> > > I'm trying to base64 encode an image and include it into a json file to
> > > post to an api. The python code that accomplishes this is:
> > >
> > > image1_data =
> > > base64.b64encode(httpx.get(image1_url).content).decode("utf-8")
> > >
> > > When I try to follow the logic in Livecode I get:
> > >
> > > put url imageUrl into sImage
> > > put base64Encode (sImage) into base64Image
> > > put textDecode (base64Image, "UTF-8") into encodedImageData
> > >
> > > However the api complains that the image is not encoded properly.
> Adding
> > or
> > > removing the "textDecode" step does not help. Any thoughts?
> > >
> >
> > This is just a guess, but I thing your last line needs to be:
> >
> > put textEncode(base64Image,"UTF-8") into encodedImageData
> >
> > textDecode in Livecode converts from the format (UTF-8) to Livecode's
> > 16bit internal unicode
> >
> > textEncode converts from livecode's internal 16bit unicode to the
> > indicated format (UTF-8).
>


More information about the use-livecode mailing list