add canvas, fix #2