'canvas2d toDataURL() different output on different browser

I have the same image and the same size of canvas, but the output is different. I want the same output, how should I do it?

var canvas = document.createElement('canvas'),
    ctx = canvas.getContext('2d'),
    img = new Image;

img.crossOrigin = 'Anonymous';

img.onload = function(){
    canvas.height = img.height;
    canvas.width = img.width;
    ctx.drawImage(img, 0, 0);
    var dataURL = canvas.toDataURL();
    setBreakpoint(dataURL);
    callback.call(this, dataURL);
    canvas = null;
};

img.src = url;


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source