/ / Плъзнете и пуснете форма от HTML5 платно в друга - html5, платно, drag-and-drop, html5-canvas

Плъзнете и пуснете форма от HTML5 платно на друго - html5, платно, плъзгане и пускане, html5-платно

Помислете дали има две платна. Бих искал да изтегля фигура, която е в платното и да я пусна на друго платно. Възможно ли е?

Благодарение на моя въпрос.

Отговори:

0 за отговор № 1

Това определено е възможно. Но няма да е особено лесно. Ще ви дам основната идея: Вие ще трябва да направите самата математика и реализацията си:

  1. Разберете границите на формата на източника.
  2. Вземете тези пикселни данни и ги използвайте, за да създадете нов платнов елемент над стария. Ще използвате това, за да се справите с плъзгане.
  3. Внедрете логика за това временно платно.
  4. Открийте "капка" върху целевото платно, разберете къде са заложени границите. Заместете целевите пикселни данни с данните за драгиращите.
  5. Отърви се от драматичното платно.

Надявам се това да помогне!


0 за отговор № 2

Може да не разбирам въпроса ви, но формата няма да бъде във всеки контекст, в който го съставяте.

Пример:

context1.drawImage(...);
context2.drawImage(...);

Просто променете контекста?


0 за отговор № 3

Най-лесният начин да направите е да използвате DOM прокси обекти, улавяне на събитие на мишката, препокриване на платното. Тъй като кодът в въпроса е много сложен предвид използването на библиотека:

http://www.html5canvastutorials.com/kineticjs/html5-canvas-drag-and-drop-tutorial/

От платно до платно е все още нещо, от което се нуждаетеза да разбера себе си, тъй като случаят на употреба е много рядък и трябва да анимирате обекта, когато плъзгането не е на платното. Определено възможно, но изключително сложно.