Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Canvas временное сохранение на сервер по просьбе клиента и выдача на загрузку (https://javascript.ru/forum/misc/30660-canvas-vremennoe-sokhranenie-na-server-po-prosbe-klienta-i-vydacha-na-zagruzku.html)

Grindel 11.08.2012 12:33

Canvas временное сохранение на сервер по просьбе клиента и выдача на загрузку
 
Здравствуйте.

Собственно весь вопрос в заголовке, но я поясню.
При нажатие, допустим на кнопочку, canvas сохраняется на сервере, на сутки, а потом выдается на загрузку клиенту, а на самой странице появляется временная ссылка на файл.

melky 11.08.2012 12:47

canvas сохранить можно по dataURI, читайте HTML5 доки.
http://javascript.ru/forum/misc/8266...khranenie.html
http://habrahabr.ru/post/119772/


сохраняется на сервере, на сутки - это уже в php скрипте реализуется.
ссылка на временной файл - тоже php.

Grindel 11.08.2012 13:25

Я нашёл вот такой пример http://www.html5canvastutorials.com/...g-as-an-image/ но при подстановке этого в мой скрипт
http://bart.grindel.su/test
http://bart.grindel.su/js/bart.js

Ничего не происходит...

vadim5june 11.08.2012 13:57

Цитата:

Сообщение от Grindel (Сообщение 196630)
Я нашёл вот такой пример http://www.html5canvastutorials.com/...g-as-an-image/

так там не на сервер записывается а на жесткий диск пользователь записывает как картинку
Ваш сервер не грузит что то

Grindel 11.08.2012 15:07

Знаю, но у меня и это не работает)

vadim5june 11.08.2012 15:36

Цитата:

Сообщение от Grindel (Сообщение 196651)
Знаю, но у меня и это не работает)

вставьте вот так
document.onkeyup = function (e) {
	e = e || window.event;
	if (e.keyCode === 13) {
		alert("Вы нажали Enter!");
var dataURL = document.getElementById('bart').toDataURL();
document.getElementById("canvasImg").src = dataURL;
	}
	
	return false;
};

Grindel 11.08.2012 19:38

vadim5june,
Вот:http://bart.grindel.su/test/

vadim5june 11.08.2012 20:00

Цитата:

Сообщение от Grindel (Сообщение 196706)
vadim5june,
Вот:http://bart.grindel.su/test/

Вы всегда пытаетесь вывести картинку до того как она сформирована
или отдельную кнопку для этого делайте или в draw в конце вставьте
ctx.drawImage(sprite, 498, 128, 80, 180, 406, 118, 80, 180);
test();
};

Grindel 11.08.2012 20:08

Цитата:

Сообщение от vadim5june
Вы всегда пытаетесь вывести картинку до того как она сформирована

То есть, несмотря на очерёдность функций: draw(); test(); картинка всё равно рисуется позже?

vadim5june 11.08.2012 20:11

Цитата:

Сообщение от Grindel (Сообщение 196712)
То есть, несмотря на очерёдность функций: draw(); test(); картинка всё равно рисуется позже?

мы к draw то обращаемся только после загрузки рисунка
sprite.onload=function(e){draw('bar...
а test сразу выполняется-раньше draw
как у Вас было
function test (){...
test()
http://learn.javascript.ru/events-and-timing-depth


Часовой пояс GMT +3, время: 14:07.