Сохранение растеризации элемента canvas со стороны сервера - PullRequest
0 голосов
/ 09 ноября 2010

Я создал страницу, которая использует некоторые jQuery, и Рафаэль (векторы и изображения на холсте), чтобы позволить пользователю настроить изображение, выбрав несколько цветов.Весь холст можно воссоздать на стороне клиента, инициализировав его массивом простых аргументов, таких как:

  initCanvas({
    'wall' : 'green',
    'ceiling' : 'black',
    'floor' : 'white'
  })

Таким образом, все, что создано пользователем, может быть легко воссоздано.

Возможно ли получитьсервер для рендеринга и сохранения этого холста как изображения?

Любые предложения, чтобы указать мне правильное направление, было бы здорово.

Ответы [ 3 ]

1 голос
/ 10 ноября 2010

У ребят из LearnBoost есть реализация canvas для NodeJS.

http://www.learnboost.com/introducing-node-canvas-server-side-html5-canvas-api/

Используя nodejs и node-canvas, вы можете сгенерировать изображение, используя canvas на стороне сервера, и передать его обратно пользователю.

0 голосов
/ 09 ноября 2010

Сначала отправьте его на сервер через JSON.

Оказавшись там, вы можете пройти два маршрута.

  1. Рендеринг через Батик (легко, если у вас есть сервер Java, но становится больно, если работает php) или
  2. Отправьте в ImageMagik.
0 голосов
/ 09 ноября 2010

Похоже, что это будет хорошим решением вашей проблемы: http://www.benbarnett.net/2010/06/04/export-svg-from-raphael-js-to-create-a-png-bitmap/

...