Receive a Base64 string via JSON and display in a Timage DELPHI

Asked

Viewed 3,571 times

0

I am receiving a JSON object, which inside it has a photo converted into Base64. I need to load this string into a Timage in Delphi. Pick up the string I managed using the superobject class, but Base64 I am not finding the solution. I appreciate the help already!

{"dtnascimento":"22/02/1922","foto":"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","nome":"Fulano de Tal"}
  • See if the answer to this question can help you: https://stackoverflow.com/questions/21909096/convert-base64-to-bitmap

1 answer

1


Good

You have to take the string and convert it to a stream, then use that stream to create the image.

This is a code I have, to put an image on a devexpress button, but it should be enough to understand what I’m doing

s:=TMemoryStream.Create;
bb:=decodebase64(tuaStringJSON);
if Length(bb)>0 then
begin
  s.WriteData(bb,Length(bb));
  s.position:=0;
  png:=TPngImage.Create;
  png.LoadFromStream(s);
  button.Glyph.Assign(png);
  png.Destroy;
end;
s.free;

The decodebase64 function is in Soap.Encddecd

Browser other questions tagged

You are not signed in. Login or sign up in order to post.