I am using this library to convert FontAwesome Icons on the html page into canvas, then converting them to base64 string, and finally, to byte[] for use in a crystal report. On Firefox and Chrome, this functionality works perfectly. On Safari 10.1.2, the canvas element doesn't render the icon; It shows as a blank, white square.
To Reproduce:
html2canvas(document.querySelector(
#icon), { logging: true, allowTaint: true })
canvas.toDataURL();
document.body.appendChild(canvas);
The canvas element shows up as blank white. The base64 string is valid, but it is also blank white (as expected i suppose).
On a separate, but less important note. I had a bug in safari only, where if the element has display:inline-block, the canvas would be empty. I had to change it to display:inline-flex for the canvas to load properly-ish
Most helpful comment
I sent a PR to fix this issue