当前位置:网站首页>js----SVG转PNG

js----SVG转PNG

2022-06-22 20:50:00 紫微前端

/** 
 * @desc   SVG转PNG
 * @param  {Object} o 转入参数
 * @param  {Element} o.svg svg 节点
 * @param  {Number} o.scale 缩放
 * @param  {String} o.toDataType 输出数据类型 toDataURL||toBlob
 * @param  {Function} o.success 成功回调
 * @param  {Function} o.error 失败回调
 */
function svg2png(o) {
    let svg = o.svg;
    let scale = o.scale || 1;
    let toDataType = o.toDataType || "toDataURL";
    let success = o.success || function () { };
    let error = o.error || function () { };
    let svgData = new XMLSerializer().serializeToString(svg);
    let canvas = document.createElement("canvas");
    let svgSize = svg.getBoundingClientRect();
    canvas.width = svgSize.width * scale;
    canvas.height = svgSize.height * scale;
    // canvas.style.width = svgSize.width;
    // canvas.style.height = svgSize.height;
    let ctx = canvas.getContext("2d");
    ctx.scale(scale
原网站

版权声明
本文为[紫微前端]所创,转载请带上原文链接,感谢
https://liuhao.blog.csdn.net/article/details/125411378