Объединение двух base64 URL String (изображение) - PullRequest
0 голосов
/ 17 января 2019

, поэтому я пытаюсь объединить две или более строки URL-адреса base64, сгенерированных из моей камеры (используя cordova-plugin-camera). И я пытаюсь сгенерировать ее в одну строку URL-адреса base64, чтобы преобразовать ее только в одно изображение.

Я попытался объединить его вручную, выполнив это.

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

но эта штука не работает. Любые идеи, как я могу сделать это возможным?

Ссылки:

Объединение iOS

Соедините две строки Base64 и затем декодируйте их

Спасибо!

1 Ответ

0 голосов
/ 17 января 2019

Кодирование Base64 просто берет биты, составляющие то, что вы кодируете, в данном случае ваши изображения, и переводит их в строку, состоящую из 64-символьного алфавита.

То, что вы пытаетесь сделать, на самом деле ничем не отличается от объединения оригинальных битов изображений в один битовый поток и сохранения его в файл.Результатом будет недопустимое изображение из-за форматов файлов изображений, содержащих данные заголовка и тому подобное.

В довершение всего, base64 добавит дополнительные символы в конец строки, если исходные данные не находятся вполные порции по 24 бита.

Вот хороший пример кодирования base64 и его работы

Чтобы выполнить то, что вы пытаетесь сделать, вы можете просто использоватьредактор изображений, который объединяет изображения и затем кодирует их с помощью base64.

Если вы хотите сделать это программно, вы можете написать простой веб-сервис, который берет ваши 2 отдельных изображения в кодировке base64 и затем объединяет их вместе в сервисе.и затем вернуть закодированную в base64 строку нового изображения.

...