impl: crop on cloned canvas, refactoring