使用svg.js时,关于svg元素的集中对齐方式

svg.js 的set可以操作每个set组合里面的子元素
setGroupAlign (type) {

        let box = this.group.set.bbox();

        let last = this.draw.last();

        // console.log(box)

        switch(type){

            case 'left':

//    保持左对齐

                this.group.set.x(box.x) 

            break;

            case 'right':

// 右对齐会有元素偏移出去,

                this.group.set.members.forEach(g =>{

                    let width = g.bbox().width

// 移动的时候需要减去当前元素的宽度

                    g.x(box.x2-width)

                })

            break;

            case 'center':

// 统一set里面的中心点,居中对齐

                this.group.set.cx(box.cx, box.cy)

            break;

            case 'middle':

                this.group.set.cy(box.cy, box.cy)

            break;

            case 'top':

                this.group.set.y(box.y)

            break;

            case 'bottom':

//同右对齐一样的原理

                this.group.set.members.forEach(g =>{

                    let width = g.bbox().height

                    g.y(box.x2-width)

                })

            break;

        }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容