Как загрузить данные base64 в виде изображения?

#javascript #image #vue.js #base64 #digital-signature

#javascript #изображение #vue.js #base64 #цифровая подпись

Вопрос:

Я использую библиотеку vue-signature и не знаю, как загрузить данные base64, сгенерированные в виде изображения, вот ссылка на библиотеку: https://www.npmjs.com/package/vue-signature Я уже прочитал документацию и вижу, что методы «Save ()» Сохраняют изображение в формате PNG / JPG … но это дает мне данные base64, спасибо за вашедля совместной работы я использую vue js

Комментарии:

1. если у вас есть данные base64, вы можете превратить их в data-uri с помощью pre-pending data:image/png;base64, , который затем можно отобразить в <img> теге

Ответ №1:

Это не самое оптимизированное решение, но оно работает.

 var a = document.createElement("a"); //Create <a>
a.href = "data:image/png;base64,"   ImageBase64; //Image Base64 Goes here
a.download = "Image.png"; //File name Here
a.click(); //Downloaded file
  

В вашем случае вы можете попробовать это

 var canvas = document.querySelector("canvas");

var signaturePad = new SignaturePad(canvas);

// Returns signature image as data URL (see https://mdn.io/todataurl for the list of possible parameters)
signaturePad.toDataURL("image/jpeg"); // save image as JPEG
  

источник : https://vuejsexamples.com/vue-signature-pad-component /

Комментарии:

1. Я пробую что-то подобное import SignaturePad from "signature_pad"... methods : { save(){ var canvas = document.querySelector("#signature"); var signaturePad = new SignaturePad(canvas); signaturePad.toDataURL } } , и он выдает мне ошибку типа «canvas.getContext не является функцией»

2. Поддержано, потому что я действительно думал, что мне нужно преобразовать base64 в большой двоичный объект, а затем в файл, и только тогда вы сможете его загрузить. С вашим ответом я понял, что вы можете пропустить весь этот процесс и загрузить его непосредственно в виде строки base64.