我有一个将图像转换为 JSON 数组的应用程序,并将其保存到 blob 字段中:
function getImage(): String;
var
memorystream : TMemoryStream;
jsonArray : TJSONArray;
begin
memorystream := TMemoryStream.Create;
myImage.Picture.Graphic.SaveToStream(memorystream);
memorystream.Position := 0;
jsonArray := TJSONArray.Create;
jsonArray := TDBXJSONTools.StreamToJSON(memorystream, 0, memorystream.Size);
memorystream.Free;
Result := jsonArray.ToString;
end;
PNG 图像的转换结果如下所示:
[137,80,78,71,13,10,26,10,0,0, ... ]
这个结果存储在一个 blob 字段中,我用以下代码返回该字段:
stream := TStream.Create;
stream := cdsPesquisa.CreateBlobStream(fieldAux, bmRead);
stream.Position := 0;
jsonArray := TJSONArray.Create;
jsonArray := TDBXJSONTools.StreamToJSON(stream, 0, stream.Size);
在这里,我有相同的 JSON 字符串[137,80,78,71,13,10,26,10,0,0, ... ]
一开始,但我需要再次将这个 JSON 数组转换为图像。
我怎样才能做到这一点?