Скопировать HTML-холст в буфер обмена как изображение

У меня есть веб-приложение, которое я администрирую для клиента, который использует графическую библиотеку, которая генерирует графики с использованием холста. Клиент хочет, чтобы пользователь мог копировать любой график на сайте, чтобы его можно было вставить в текстовый документ. Конкретный вопрос:

Можно ли скопировать элемент canvas HTML в буфер обмена как изображение?

Я знаю, что можно сохранить холст в качестве изображения, но он несколько более громоздкий, чем копирование/вставка.

EDIT: Я узнал, что вы можете преобразовать холст в изображение с помощью URI данных src, но поддержка копирования и вставки на этом изображении неоднозначна. Firefox позволяет копировать и вставлять эти изображения из браузера, но хром этого не делает.

Как сейчас, кажется, что нет надежного способа скопировать и вставить элемент холста.

Ответы

Ответ 1

Вы не можете напрямую взаимодействовать с буфером обмена с Javascript, но это возможно с помощью Flash.

Вы можете попробовать http://code.google.com/p/zeroclipboard/, как предлагается здесь Как скопировать в буфер обмена в JavaScript?

Копирование двоичных данных может быть проблематичным.

См. также

http://danielmclaren.com/node/91