Я использую jSignature, чтобы взять на своем веб-сайте подпись клиента в форме.
Затем, когда нажимается кнопка отправки в форме, я получаю подпись в формате svg64 и затем передаю ее с постом на страницу php.
Здесь все работает, но теперь мне нужно преобразовать строку, которая относится к изображению svg, в изображение, которое я могу поместить в файл Excel (также это автоматически в php).
Это пример SVG, который я должен конвертировать
image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMzc1IiBoZWlnaHQ9IjM4Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBkPSJNIDEgMSBjIDAuOTggMC4wMyAzNi43MyAwLjg4IDU2IDIgYyAxNi4yMiAwLjk1IDMwLjk2IDMuMDYgNDcgNCBjIDcuMTQgMC40MiAxMy45OSAtMC40IDIxIDAgYyA0LjcyIDAuMjcgOS4yMSAxLjcyIDE0IDIgYyAzMC4xNyAxLjc2IDU4LjQ3IDIuMDggODkgNCBjIDEzLjA5IDAuODIgMjQuOTIgMi45MSAzOCA0IGMgNy41NCAwLjYzIDE1LjI5IC0wLjA4IDIyIDEgYyAzIDAuNDggNS45MiAzLjAyIDkgNCBjIDQuMTggMS4zMyA4LjU3IDIuMzEgMTMgMyBjIDYuMzUgMC45OSAxMi42OCAwLjg0IDE5IDIgYyAxMC4xOCAxLjg3IDIwLjE5IDUuMDkgMzAgNyBjIDEuOTEgMC4zNyA0LjE1IC0wLjM3IDYgMCBsIDkgMyIvPjwvc3ZnPg==
Как я могу сделать? Можно ли получить изображение, которое может быть автоматически сохранено в файле Excel?
По крайней мере, я решил это с помощью этого
//Acquisizione dati dal form
$name = $_POST['name'];
echo "$name";
$signature = $_POST['signature_value'];
$data = str_replace('data:image/png;base64,', '' , $signature);
$data = base64_decode($data);$output_file="$name.png";
$im = imagecreatefromstring($data);
if ($im !== false) {
imagealphablending($im, false);
imagesavealpha($im, true);
//header('Content-Type: image/png'); è superfluo, siccome l'immagine non viene mostrata qua
imagepng($im, $output_file );
//imagepng($im);
imagedestroy($im);
}
else {
echo 'An error occurred.';
}
Других решений пока нет …