Ant Design Vue给图片添加水印
在Ant Design Vue中给图片添加水印可以通过在图片上叠加一个透明的水印层来实现。以下是一个简单的实现方式:
- 创建一个水印组件
Watermark.vue
:
<template>
<div
class="watermark"
:style="{
position: 'absolute',
top: '0',
left: '0',
width: '100%',
height: '100%',
pointerEvents: 'none',
background: 'url(' + watermarkSrc + ') no-repeat center center',
opacity: watermarkOpacity,
zIndex: 1000
}"
></div>
</template>
<script>
export default {
name: 'Watermark',
props: {
watermarkSrc: {
type: String,
default: ''
},
watermarkOpacity: {
type: Number,
default: 0.5
}
}
}
</script>
<style scoped>
.watermark {
background-size: 20%;
}
</style>
- 在需要添加水印的图片组件中使用
Watermark
组件:
<template>
<div class="image-container">
<img :src="imageSrc" alt="Sample Image" />
<watermark :watermark-src="watermarkSrc" :watermark-opacity="watermarkOpacity" />
</div>
</template>
<script>
import Watermark from './Watermark.vue';
export default {
components: {
Watermark
},
data() {
return {
imageSrc: 'path_to_your_image.jpg',
watermarkSrc: 'path_to_your_watermark_image.png',
watermarkOpacity: 0.5
};
}
}
</script>
<style scoped>
.image-container {
position: relative;
}
.image-container img {
width: 100%;
height: auto;
}
</style>
在这个例子中,Watermark.vue
组件负责渲染水印,而其他组件则提供水印图片的路径和透明度。这里的关键是使用CSS背景属性来设置水印,并将其定位在图片的中心。然后将水印组件作为图片的子元素放置,确保水印能覆盖在图片之上。
评论已关闭