Don't save/restore the canvas state too often. Fixes #703
Merge pull request #704 from marco-c/reduce_save_restore

Don't save/restore the canvas state too often. Fixes #703