IOweb/node_modules/@iconify/tools/lib/optimise/scale.cjs
2026-07-03 15:07:38 -05:00

27 lines
755 B
JavaScript

'use strict';
const optimise_origin = require('./origin.cjs');
const optimise_svgo = require('./svgo.cjs');
require('svgo');
require('@iconify/utils/lib/svg/id');
function scaleSVG(svg, scale) {
optimise_origin.resetSVGOrigin(svg);
if (scale !== 1) {
const viewBox = svg.viewBox;
const width = viewBox.width * scale;
const height = viewBox.height * scale;
const content = `<svg width="${width}" height="${height}" viewBox="0 0 ${width} ${height}"><g transform="scale(${scale})">${svg.getBody()}</g></svg>`;
svg.load(content);
optimise_svgo.runSVGO(svg, {
plugins: [
"collapseGroups",
"convertTransform",
"convertPathData",
"sortAttrs"
]
});
}
}
exports.scaleSVG = scaleSVG;