base64图片进行缩放

简介: base64

base64图片进行缩放

描述

后台传递来的是base64格式的图片数据,直接显示的话有的图片大小格式不符合要求,所以在前端接收到后台的响应数据后,需要对图片格式进行处理后再显示。

<template><div><Carouselclass="header-boox"v-model="banner":autoplay-speed="speedS"autoplayloop><CarouselItemv-for="(item,index) in imageArray":value="item":key="index"><divclass="carousel-item"><img:src="item"/></div></CarouselItem></Carousel></div></template><script>  export default {
        name: 'Home',
        components: {},
        data(){
            return {
                banner: 0,
                speedS: 5000,
                imageArray: [],
            }
        },
        methods: {
            queryHome() {
                let params = {};
                apiRequest(this,queryCarouselMap(params),response => {
                    response.carouseList.map((item) => {
                        let canvas = document.createElement("canvas");
                        let ctx = canvas.getContext("2d");
                        let imagePath;
                        let image = new Image();
                        //为了在方法内部的方法中使用this对象,相当于起别名。
                        let _this = this;
                        image.onload = function(e) {
                            let width = image.width;
                            if (width>1110){
                                //如果等比缩放可以计算宽度和长度,我这里不需要等比缩放,所以直接写死
                                var anw = document.createAttribute("width");
                                anw.nodeValue = 1110;
                                var anh = document.createAttribute("height");
                                anh.nodeValue = 250;
                                canvas.setAttributeNode(anw);
                                canvas.setAttributeNode(anh);
                                ctx.drawImage(image,0,0,1110,250);
                                imagePath = canvas.toDataURL('image/png',1);
                            }else{
                                imagePath = item.imagePath;
                            }
                            _this.imageArray.push(imagePath);
                        };
                        image.src = item.imagePath;
                    });
                });
            }
        },
        created: {
            this.queryHome();
        }
    }
</script>


相关文章
pillow 压缩和放大图片 改变图片的像素
pillow 压缩和放大图片 改变图片的像素
|
4月前
|
前端开发
如何使用 CSS object-fit 进行图片的缩放和裁剪
如何使用 CSS object-fit 进行图片的缩放和裁剪
122 0
如何使用 CSS object-fit 进行图片的缩放和裁剪
|
6月前
|
开发工具 Android开发 开发者
Android `.9.png` 图像是用于UI的可拉伸格式,保持元素清晰度和比例
【6月更文挑战第26天】Android `.9.png` 图像是用于UI的可拉伸格式,保持元素清晰度和比例。通过边上的黑线定义拉伸区域,右下角黑点标识内容区域,适应文本或组件大小变化。常用于按钮、背景等,确保跨屏幕尺寸显示质量。Android SDK 提供`draw9patch.bat`工具来创建和编辑。**
263 6
|
JavaScript 前端开发
图片转base64、判断图片大小、图片压缩、图片上传
文章主要介绍 `js` 实现压缩上传图片转base64,其他的框架(如React、Vue、Angular)也可借此参考。**这个方法真实可用,已在实际项目中运行**。
347 0
|
存储 Python
Python PIL.Image模块:图片变更尺寸大小(宽x高)
Python PIL.Image模块:图片变更尺寸大小(宽x高)
752 0
|
前端开发 算法 测试技术
canvas还能这么用?🤨 图片压缩70% | base64转换原理
canvas还能这么用?🤨 图片压缩70% | base64转换原理
1137 0
canvas还能这么用?🤨 图片压缩70% | base64转换原理
|
移动开发 JavaScript HTML5
JS获取img图片的原始尺寸高度和宽度
JS获取img图片的原始尺寸高度和宽度
566 0
JS获取img图片的原始尺寸高度和宽度
|
Web App开发 前端开发
Canvas合成自定义Gif图
上次介绍了Canvas自定义图片大小及蒙版与生成gif图,没有详细的说明如何生成gif图,生成gif图的过程也可以进行一些优化。 我们无需借助第三方库,直接使用canvas原生的api就可以完成很多的功能。