Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Передача изображения из канвы на сервер в виде файла (https://javascript.ru/forum/misc/13255-peredacha-izobrazheniya-iz-kanvy-na-server-v-vide-fajjla.html)

dmitriymar 22.11.2010 22:11

Передача изображения из канвы на сервер в виде файла
 
Доброго времени суток. Кто подскажет каким образом изображение из канвы можно передать на сервер в виде графического файла только средствами javascript c возможным применением Ajax? Буду оч благодарен за принцип,то проштудировав всю литературу нашел только что можно сохранить из канвы save- ом. а формат и куда сохраняеться неясно абсолютно!

B@rmaley.e><e 22.11.2010 22:55

Сформировать multipart запрос и отправить его. Проблема только в том, что нужна возможность передачи информации в бинарном режиме, что некроссбраузерно. Другой вариант - base64. Но тогда нужно будет преобразовать закодированный файл на сервере в обычный бинарник.

dmitriymar 22.11.2010 22:59

base64? а что это есть вообще ? а вариант с сейвом канвы (упоминание о нём в Дронове только нашел)?

dmitriymar 22.11.2010 23:03

тоесть насколько я понял-мне проще разобрать картинку в массив с учётом формата png.отправить этот массив на сервер ajaxom. там собрать из него файл и поменять раширение на png?

dmitriymar 22.11.2010 23:09

А если такой вариант? по идее картинка из канвы должна быть по идее в масссиве имидж.возможно ли отправить на сервер элемент этого массива?

subzey 22.11.2010 23:37

Цитата:

Сообщение от B@rmaley.e><e (Сообщение 80281)
Сформировать multipart запрос и отправить его. Проблема только в том, что нужна возможность передачи информации в бинарном режиме, что некроссбраузерно. Другой вариант - base64. Но тогда нужно будет преобразовать закодированный файл на сервере в обычный бинарник.

Заголовок Content-Transfer-Encoding: base64 же на аплоад тоже работает.

B@rmaley.e><e 23.11.2010 00:44

Цитата:

Сообщение от subzey
Заголовок Content-Transfer-Encoding: base64 же на аплоад тоже работает.

Попробовал загрузить файл, прочитав его как data:url, с таким заголовком - внутри файла оказалось все то же data:url.

subzey 23.11.2010 11:54

Мда. Похоже, что в PHP вообще напрочь игнорируется Content-Transfer-Encoding.

Прошу прощения за дезинформацию.

dmitriymar 23.11.2010 12:16

Ну дак проблемма на самом деле вот в чём-мне програмно нужно изменить размеры клиентского граф изображения ширину и высоту и сохранить их. Да сделать на серверной части это без проблем-загрузить изображение в канву нужного размера с необходимыми пропроциями-перенести в новую по точкам и сохранить из новой в файл. Но просто не хотелось под это дело перегружать сервер... Есть ли решение этой проблемы на стороне клиента с сохранением этого изображения на сервере?

dmitriymar 23.11.2010 15:05

всё сам понял почему не выйдет... цвет точки javascript не определяет


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