В настоящее время у меня есть единственный 2D-контекст/холст для всех линий, нарисованных с помощью lineTo(), но я хотел реализовать функцию отмены/повторения, которая невозможна без повторной перерисовки всего холста или сохранения состояний (1, 2).
По сравнению с другими методами, есть ли недостаток в добавлении нового холста для каждой строки, нарисованной в стеке? С точки зрения временной сложности отмена/повторное выполнение будет O(1) вместо O(n), но я не уверен, будут ли другие проблемы.