UNPKG

@netdata/charts

Version:

Netdata frontend SDK and chart utilities

36 lines (35 loc) 1.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.measureTextWidth = exports.createCanvas = exports.copyCanvas = void 0; var createCanvas = exports.createCanvas = function createCanvas(width, height) { var backgroundCanvas = document.createElement("canvas"); backgroundCanvas.width = width; backgroundCanvas.height = height; return backgroundCanvas; }; var copyCanvas = exports.copyCanvas = function copyCanvas(sourceCanvas, targetCanvas) { targetCanvas.width = sourceCanvas.width; targetCanvas.height = sourceCanvas.height; var ctx = targetCanvas.getContext("2d"); ctx.clearRect(0, 0, targetCanvas.width, targetCanvas.height); ctx.drawImage(sourceCanvas, 0, 0); }; var measureContext; var getMeasureContext = function getMeasureContext() { if (typeof document === "undefined") return null; if (typeof navigator !== "undefined" && /jsdom/i.test(navigator.userAgent)) return null; try { if (!measureContext) measureContext = document.createElement("canvas").getContext("2d"); } catch (_unused) { return null; } return measureContext; }; var measureTextWidth = exports.measureTextWidth = function measureTextWidth(text, font) { var context = getMeasureContext(); if (!context) return null; if (font) context.font = font; return context.measureText(text || "").width; };