Я пытаюсь получить содержимое холста html5 и передать его на мой сервер django, где он будет обрабатываться с помощью PIL и сохраняться в формате PNG. Вот что у меня есть:
В HTML-форме пользователь нажимает кнопку «обновить», содержимое холста
- with canvas.toDataURL () - выводится в текстовое поле, которое отправляется через форму POST. В конце концов это будет автоматически, но не сейчас.
<input type="text" id="canvasData" name="canvasData"/>
<input type='button' value="update" onclick='jscript:updateData();'>
<canvas id="sketch"></canvas>
<script type="text/javascript">
function jscript:updateData() {
$('#canvasData')[0].value = $('canvas')[0].toDataURL();
}
</script>
canvasData при отправке пересылается в виде «data: image / png; base64, iVBORw0KGgoAAAA ... etc ... =». Тогда я занимаюсь этим в django:
from PIL import Image
...
canvasData = request.POST.get('canvasData', '')
im = Image.somehowLoad(canvasData)
...
im.save('canvas.png')
И вот где я застрял. Я не могу понять, как получить URL-адрес в кодировке base64 для загрузки изображения в удобную форму с помощью PIL.
Спасибо!
edit: вот код нижнего комментария:
>>> d
'data:image/png;base64,iVBORw0K'
>>> d.strip('data:image/png;base64,')
'VBORw0K'