Библиотека рисования Javascript?

Есть какие-нибудь предложения для библиотеки интерактивного рисования JavaScript? Просто нужно рисовать линии, многоугольники, тексты разного цвета. Совместимость с IE / Firefox / Opera / Safari. Взаимодействие с другими людьми

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
46
0
35 248
10

Ответы 10

Вы можете использовать объект холста непосредственно для рисования в 2D. IE требует библиотеки excanvas.

http://developer.mozilla.org/En/Drawing_Graphics_with_Canvas

Canvas - это способ сделать что-то большее, чем несколько тривиальных блоков или линий. И excanvas работает на удивление хорошо, по крайней мере, в IE 7.

dgvid 19.09.2008 00:36

похоже, что Рафаэль может делать больше, чем простые прямоугольники и линии .. raphaeljs.com

ina 04.08.2010 16:41

Processing.js Джона Ресига - хороший фреймворк для этого.

как processing.js сравнивается с raphael для статической графики?

ina 04.08.2010 16:40

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

John Ballinger 14.10.2010 05:49

Похоже, теперь поддерживается IE (IE9)

yorjo 27.07.2011 22:28

В зависимости от того, насколько кроссбраузерным вам нужно быть, и от вашей цели вывода, вы можете изучить элемент Canvas и связанный с ним javascript.

Холст

Попробуйте http://www.walterzorn.de/en/jsgraphics/jsgraphics_e.htm. Это лучшее, что я нашел (не прибегая к SVG), и работает в большинстве браузеров без надстроек.

Этот материал (рисование путем упорядочивания HTML-элементов) не особенно хорошо масштабируется, но, безусловно, работает :)

Dan 19.09.2008 00:39

Верно ... вы, конечно, не станете строить CAD-систему таким образом, но она может создавать довольно сложные чертежи, если вы придерживаетесь ортогональных структур и изображений (линии, прямоугольники и т. д.) И немного приукрашиваете их изображениями. Другие объекты чертежа построены с использованием нескольких элементов DIV каждый.

Steve Moyer 19.09.2008 01:31

walterzorn.com, похоже, больше не существует. :(

Alex Black 24.11.2010 00:08

новый URL: c-point.com/javascript_vector_draw.htm

quantumpotato 26.04.2014 20:34

Рафаэль очень хорош для этого и работает во всех браузерах, поскольку использует VML (для MSIE) и SVG (для всего остального).

Блин, ты меня опередил;)

Aeon 19.09.2008 00:32

СПАСИБО, это выглядит супер круто. будет использовать Рафаэля.

John Ballinger 14.10.2010 05:51

Рисование текста с помощью тега canvas - большая проблема. У вас есть варианты: использовать обычные div, абсолютно расположенные в нужных местах, или найти / написать механизм компоновки шрифтов (пример), или дождаться внедрения нового стандарта, который позволяет рисовать текст. SVG справляется с этим намного лучше.

В IE у вас есть ExplorerCanvas для имитации API холста с собственной разметкой VML IE. Тем не менее, собственный VML может создавать текст по пути и такие вещи, как SVG. Я думаю, что теоретически, если вам нужна сложная обработка текста, вам понадобятся SVG и VML, такие как библиотека Рафаэля, о которой упоминал Дэн.

Вы также можете на мгновение подумать о Flash перед тем, как начать.

Фактически, VML изначально поддерживает рисование текста, а в последних версиях ExplorerCanvas есть методы рисования текста, рекомендованные WHATWG;) explorercanvas.blogspot.com

Fabien Ménager 31.05.2009 04:17

Просто как обновление. Текст теперь гораздо менее проблематичен (2011 г.), в прошлом году он был довольно хорош. iOS4.1 + наконец-то правильно поддерживает текст на холстах, и я знаю, что Android 2.1+ тоже. Firefox / Safari / Chrome всегда имели хорошую поддержку текста холста, и IE9 + также правильно обрабатывает текст в холсте.

Gabe 03.09.2011 01:37

Как упоминалось выше, вам следует пойти по холсту. IE не поддерживает его изначально, поэтому вам необходимо загрузить ExCanvas, чтобы обеспечить кроссбраузерность. Я бы рекомендовал взглянуть на Аяксиан для некоторых проектов, которые используют тег холста.

Проверьте Плагин jQuery Drawing, и вы также можете посмотреть ссылку Mozilla Холст и руководство.

Также mxGraph. Это не использует excanvas для IE. Excanvas работает намного медленнее, чем использование VML, в частности, повторное использование тех же узлов VML, а не удаление, добавление узлов DOM для перерисовки. Это часто упускается из виду, но пренебрежение производительностью IE просто ужасно.

D3.js

D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG, and CSS. D3’s emphasis on web standards gives you the full capabilities of modern browsers without tying yourself to a proprietary framework, combining powerful visualization components and a data-driven approach to DOM manipulation.

Взгляните и на этот обсуждение.

Другие вопросы по теме