@minofrk/xelto-diagram-canvas
Version:
An implementation of <xelto-diagram> in TypeScript.
30 lines • 1.43 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const point_ops_1 = require("../../point-ops");
const scale_1 = require("../scale");
const set_coordinate_system_1 = __importDefault(require("../set-coordinate-system"));
const get_physical_values_1 = __importDefault(require("./get-physical-values"));
function fillText({ value, color, rotate, virtualArea, virtualFontSize, fontFamily, }) {
return (dest) => {
const { canvasContext, canvasSize } = dest;
const physical = get_physical_values_1.default({ virtualArea, virtualFontSize }, canvasSize);
canvasContext.fillStyle = color;
canvasContext.textAlign = 'center';
canvasContext.textBaseline = 'middle';
canvasContext.font = `${physical.fontSize}px ${fontFamily ||
dest.options.fontFamily}`;
set_coordinate_system_1.default(canvasContext, {
center: dest.options.reversed
? point_ops_1.minus(canvasSize, physical.center)
: physical.center,
rotate,
scale: point_ops_1.times(scale_1.getScales(canvasSize), 1 / physical.scale),
});
canvasContext.fillText(value, 0, 0, physical.size.x * 0.9);
};
}
exports.fillText = fillText;
//# sourceMappingURL=index.js.map