#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.