2014-06-20 5 views

Antwort

22

dachte ich, die genau die gleiche Sache, und so weit wie die Issue Tracker sagt:

Ja, so wurde der Artikel geschrieben zurück, wenn Safari einen Sicherungsspeicher Verhältnis von 2 hatte immer 1 in Chrome Es ist.

Wie Sie der Ansatz sagen für den Umgang mit diesem ist:

canvas.width = width * window.devicePixelRatio;
canvas.height = height * window.devicePixelRatio;

canvas.style.width = width + 'px';
canvas.style.height = height + 'px';

Wo width und height sind aber Sie wollen, dass sie (wahrscheinlich window.innerWidth & InnerHeight für vollständige Viewport-Shenanigans.)

Dann brauchen Sie nur für die Tatsache anpassen, dass Sie die Leinwand mit Upscaling:

ctx.scale(window.devicePixelRatio, window.devicePixelRatio);

So haben Sie Ihre Lösung.

+0

Diese Antwort sollte akzeptiert werden. – RenatoUtsch