串联两个base64 URL字符串(图像)

时间:2019-01-17 02:46:16

标签: javascript angularjs ionic-framework base64 concatenation

所以我试图将相机生成的两个或多个base64 URL字符串连接起来(使用cordova-plugin-camera)。而且我正在尝试将其生成为一个base64 URL字符串,以仅将其转换为一个图像。

我试图通过这样做手动将其连接起来。

var compilation = ["data:image/jpeg;base64,"];
for(var x = 0; x < $scope.imageList.length; x++)
    compilation[0] = compilation[0] + $scope.imageList[x];

但是那东西不起作用。有什么想法可以使这成为可能吗?

参考文献:

iOS Concatenation

Join two Base64 strings and then decode them

谢谢!

1 个答案:

答案 0 :(得分:0)

Base64编码仅占用构成您要编码的位(在本例中为图像),并将它们转换为由64个字符的字母组成的字符串。

您要做的实际上与将图像的原始位连接成单个位流并将其保存到文件没有什么不同。由于图像文件格式包含标题数据和类似内容,因此结果将是无效图像。

最重要的是,如果源数据不是24位的完整块,base64将在字符串的末尾添加其他字符。

以下是base64 encoding and how it works

的详细分类

要完成您想做的事情,只需使用图像编辑器组合图像,然后进行base64编码即可。

如果要以编程方式执行此操作,则可以编写一个简单的Web服务,该服务将获取2个单独的base64编码图像,然后将它们串联到服务中,然后返回新图像的base64编码字符串。