Как конвертировать base64 в canvas и наоборот - PullRequest
0 голосов
/ 04 апреля 2020

Я написал следующий код, но могу получить правильный результат:

const str = btoa("aaaabbbbccccdddd");
// Convert string to canvas
document.getElementById('canvas').getContext('2d').putImageData(
new ImageData(
  new Uint8ClampedArray(str.split("").map(e => e.charCodeAt(0))),
  Math.ceil(str.length/4),
  1
), 0, 0);
// Convert canvas to string
const decodedStr = String.fromCharCode(...document
                    .getElementById('canvas')
                    .getContext('2d')
                    .getImageData(0, 0, Math.ceil(str.length/4), 1)
                    .data
                    .reduce((arr, elem) => [...arr, ...[elem]], []));

Почему str и decodedStr не совпадают?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...