<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图片处理
上面是“如何在Vue中实现图片的灰度处理?”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_12894.html
workflows工作流
一个漂亮的混血女孩ComfyUI工作流
泰坦尼克号桌面壁纸上ComfyUI工作流
一个女孩骑着一辆生锈的现代摩托车
一群蜜蜂和一个六边形蜂巢ComfyUI工作流
金色玫瑰花comfyui工作流
一位身穿金色铠甲的美丽女子守卫在寺庙外
一张皮卡丘向观众眨眼的逼真照片ComfyUI工作流
金属埃及人ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!