Issue #5941: improve canvas renderer's blendFunc

improve canvas renderer's blendFunc,

Merged some pull request from Develop branch.