1574 / 645 / 79
Регистрация: 24.02.2009
Сообщений: 9,268
|
|
1 | |
Отправка содержимого <canvas> на сервер03.09.2010, 22:31. Показов 6274. Ответов 9
Метки нет (Все метки)
0
|
03.09.2010, 22:31 | |
Ответы с готовыми решениями:
9
Отправка содержимого формы на сервер нажатием быстрой комбинации клавиш Отправка содержимого CANVAS на E-Mail Отправка содержимого поля в файл при нажатии кнопки без потери этого содержимого с поля Преобразование содержимого Canvas в Image |
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
|
|
03.09.2010, 23:03 | 2 |
У канв есть метод .getImageData(), который возвращает объект типа ImageData.
Этот объект имеет свойства width & height, а также свойство data, которое по сути дела является массивом чисел. Думаю, что эти данные можно легко передавать ajax-ом, кодируя объект ImageData через json.
1
|
1574 / 645 / 79
Регистрация: 24.02.2009
Сообщений: 9,268
|
|
06.09.2010, 15:31 [ТС] | 3 |
а можно код отправки на JS и PHP?
0
|
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
|
|
06.09.2010, 18:46 | 4 |
1
|
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
|
|
07.09.2010, 13:23 | 5 |
Результаты: полет нормальный
Исходник в приложении. Примечания: Сразу говорю, что мое творение - это чисто для подтверждения возможностей передачи содержимого canvas на сервер и обратно. Очень многое надо дошлифовывать и дорабатывать. Самое существенное, что надо учитывать - это размер файла картинки. Поскольку не используется никакая компрессия, то в моем примере для картинки 100х100 пикселей получается файл размером почти 100КБ. Однако, это дело поправимо, если еще на стороне сервера кодировать картинку в формат PNG. Также следует предусмотреть возможные траблы с загрузкой на сервер и обратно. Например, PHP-хостинг часто ограничивает максимальный размер POST-данных через настроку php.ini И еще, при таких объемах данных большие картинки будут загружаться долго. Поэтому есть смысл подумать о загрузке картинки кусками и о показе пользователю состояния загрузки (прогрессбар какой-нибудь).
2
|
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
|
|
07.09.2010, 13:26 | 6 |
И да, я использовал jQuery для удобства работы с AJAX. Если нет понятия что это и как, то спрашивайте.
1
|
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
|
|
07.09.2010, 15:37 | 7 |
На буржуинском форуме наткнулся на интересный способ избавиться от "синдрома" больших файлов. Новый вариант использует компрессию PNG прямо на стороне клиента перед отправкой на сервер.
Но. Сразу оговорюсь - вряд ли это можно считать 100% безопасным и надежным методом, так как этот способ базируется на "уверенности", что после конвертации картинки в PNG формат, ее данные будут зашифрованы по алгоритму base64. Хотя, надо отметить, работает в десятки раз быстрее
2
|
1574 / 645 / 79
Регистрация: 24.02.2009
Сообщений: 9,268
|
|
23.03.2011, 15:47 [ТС] | 8 |
Вроде отправляется, но сохраняется в то, что не может распознаться как изображение в формате PNG.
Как сделать так, чтобы распознавалось?
0
|
1574 / 645 / 79
Регистрация: 24.02.2009
Сообщений: 9,268
|
|
28.03.2011, 17:19 [ТС] | 9 |
Решено. Функция base64_decode().
0
|
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 9
|
|
07.12.2017, 16:08 | 10 |
0
|
07.12.2017, 16:08 | |
07.12.2017, 16:08 | |
Помогаю со студенческими работами здесь
10
Сохранение содержимого Canvas в PNG Прокрутка в canvas при выходе содержимого за пределы Canvas и PHP, Отправка картинки на почту Разработать приложение для вывода содержимого компонента класса TMemo на печать с использованием функции Canvas Разработать приложение для вывода содержимого компонента класса TMemo на печать с использованием функции Canvas Отправка содержимого Memo на email Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |