<template>
<div class="container">
<img :src="originalImage" class="original" @load="convertToGrayscale">
<img :src="grayscaleImage" class="grayscale" v-show="grayscale">
</div>
</template>
<script>
export default {
data() {
return {
originalImage: '/images/pic.jpg',
grayscaleImage: '',
grayscale: false
};
},
methods: {
convertToGrayscale() {
let canvas = document.createElement('canvas');
let ctx = canvas.getContext('2d');
let img = document.querySelector('.original');
canvas.width = img.width;
canvas.height = img.height;
ctx.drawImage(img, 0, 0);
let imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
let data = imageData.data;
for (let i = 0; i < data.length; i += 4) {
let brightness = (data[i] + data[i + 1] + data[i + 2]) / 3;
data[i] = brightness;
data[i + 1] = brightness;
data[i + 2] = brightness;
}
ctx.putImageData(imageData, 0, 0);
this.grayscaleImage = canvas.toDataURL();
this.grayscale = true;
}
}
};
</script>
<style scoped>
.container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
.original, .grayscale {
max-width: 300px;
}
.grayscale {
display: none;
}
</style>
上面是“如何在Vue中实现图片的灰度处理?”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_12894.html
workflows工作流
一只可爱的小鸟在飞翔ComfyUI工作流
一张精心制作的熊岛复古地图ComfyUI工作流
爱因斯坦在做实验3d动漫ComfyUI工作流
一个女孩骑着一辆生锈的现代摩托车
一张严重受损的宇宙飞船的照片ComfyUI工作流
广阔的沙漠中矗立着一个生锈的巨大头盔
森林里有一个皮肤像抛光黑曜石的生物
停在音乐节露营地的一辆复古大众巴士由羊毛制成
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

css3+js菜单点击动态效果
css3做一个风雨雷电天气动态图标
利用css绘画棋盘布局(象棋)
纯html+css做一个3d统计效果
如何利用svg做一个有趣的loading动画加载
html5如何3D立方体旋转特效
纯CSS饼图效果






