diff --git a/packages/text/src/TextMetrics.js b/packages/text/src/TextMetrics.js index 5cd5de8..9a0be38 100644 --- a/packages/text/src/TextMetrics.js +++ b/packages/text/src/TextMetrics.js @@ -699,7 +699,22 @@ * @private */ -const canvas = document.createElement('canvas'); +const canvas = (() => +{ + try + { + // OffscreenCanvas2D measureText can be up to 40% faster. + const c = new OffscreenCanvas(0, 0); + + c.getContext('2d'); + + return c; + } + catch (ex) + { + return document.createElement('canvas'); + } +})(); canvas.width = canvas.height = 10;