H5实现隐形水印的一些思路

简介: H5实现隐形水印的一些思路

背景

     最近公司有这样一个需求,H5在用户截图的时候是否能在截取的图片上携带用户信息和公司信息,以实现产品产权的追踪和定位。且需要用户在操作页面的时候,以及截图完成后,都是无感知的。

     目前想到一个思路,仅供参考:即在页面最顶部加上透明蒙层,蒙层携带文字信息,文字颜色也为透明,截图后文字信息肉眼不可见,通过ps等图片处理工具处理截图,才会将文字信息展示出来


具体操作

创建蒙版组件WaterMask

<template><divclass="waterMask"><divclass="item"><span>公司信息</span><span>用户信息</span></div></div></template><script>exportdefault {
name: 'WaterMask',
data() {
return {
    };
  },
};
</script><stylelang="less"scoped>@import"../../assets/less/base.less";
.waterMask {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999999999999; // 将组件层级提到最高,以覆盖在所有页面之上pointer-events: none; // 让该组件鼠标事件失效,不影响用户操作其层级之下的页面display: flex;
flex-wrap: wrap;
justify-content: center;
background: transparent; // 背景色透明  .item {
font-size: 20px;
padding: 10px;
color: rgba(0,0,0,0.005); // 文字不透明度降至最低,肉眼不可见,通过图片处理工具如ps处理后才可见  }
}
</style>
  1. App.vue中挂载
<template><divid="app"><keep-alive><router-view></router-view></keep-alive><WaterMask/></div></template><script>importWaterMaskfrom'./components/common/WaterMask';
exportdefault {
name: 'App',
components: {
WaterMask,
  },
data() {
return {
    };
  },
};
</script><stylelang="less"></style>

如何通过PS让隐形水印展现出来

针对背景较亮的情况

  • 水印蒙层字体颜色值设置rgba(0,0,0,0.005)
.waterMask {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999999999999;
pointer-events: none;
display: flex;
flex-wrap: wrap;
justify-content: center;
background: transparent;
  .item {
font-size: 20px;
padding: 10px;
color: rgba(0,0,0,0.005); // 水印蒙层字体颜色设置为白色透明  }
}

PS打开截取的图片

image.png

点击右侧面板中的曲线

image.png

预设选增强对比度

image.png

将曲线拉到合适位置,即可看到隐藏的水印

image.png

针对背景较暗的情况

  • 水印蒙层字体颜色值设置rgba(255,255,255,0.005)
.waterMask {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999999999999;
pointer-events: none;
display: flex;
flex-wrap: wrap;
justify-content: center;
background: transparent;
  .item {
font-size: 20px;
padding: 10px;
color: rgba(255,255,255,0.005); // 水印蒙层字体颜色设置为黑色透明  }
}

PS打开截取的图片

image.png

预设选增强对比度

image.png

将曲线拉到合适位置,即可看到隐藏的水印

image.png

目录
相关文章
|
5月前
|
安全 算法 文件存储
共享资料下载,自动转PDF并添加隐形水印
云盒子企业网盘增强文件安全,支持下载时自动转PDF并加水印。管理员可配置目录规则,选择明水印、隐形水印或点阵水印。明水印直观防复制,隐形水印用于隐蔽追踪,点阵水印不影响阅读。文件格式支持度和水印类型取决于设置。此功能适用于文档安全、版权保护等场景。欲知详情或测试,访问[云盒子官网](yhz66.com)咨询客服。
125 1
|
算法 定位技术 C++
A* 算法详解(超级详细讲解,附有大图)
A* 算法详解(超级详细讲解,附有大图)
2228 0
|
数据安全/隐私保护
谈一谈|文档加水印的常见做法
谈一谈|文档加水印的常见做法
132 1
|
监控 算法
万亩农田全景视频拼接案例
今天分享的案例是给某运营商做的《农业场景感知认知系统》项目,涉及到15路视频拼接,其中每5路枪机拼接为一路全景视频,共计三组。
121 0
|
存储 算法 开发工具
【每周一坑】图像的指纹:数字水印 + 【解答】鸡兔同笼
有人可能好奇,仅凭截图就能知道是谁干的吗?这里就是用到了“数字水印”技术。
防伪彩色二维码的设计制作
彩码指彩色二维码、一般使用QRcode类型,彩码的作用主要是防伪领域
137 0
|
机器学习/深度学习 人工智能 算法
给图片悄悄加上像素级水印:防止AI「抄袭」艺术作品的方法找到了
给图片悄悄加上像素级水印:防止AI「抄袭」艺术作品的方法找到了
234 0
|
数据安全/隐私保护 计算机视觉 Python
谈一谈|可见水印数据集生成技术
谈一谈|可见水印数据集生成技术
227 0
|
算法 程序员
拿捏汉诺塔问题(附有动图)
相传在古印度圣庙中,有一种被称为汉诺塔(Hanoi)的游戏。该游戏是在一块铜板装置上,有三根杆(编号A、B、C),在A杆自下而上、由大到小按顺序放置64个金盘。游戏的目标:把A杆上的金盘全部移到C杆上,并仍保持原有顺序叠好。操作规则:每次只能移动一个盘子,并且在移动过程中三根杆上都始终保持大盘在下,小盘在上,操作过程中盘子可以置于A、B、C任一杆上。
359 0
拿捏汉诺塔问题(附有动图)
|
JavaScript 算法 前端开发
短酷无水印视频接口分析
短酷无水印视频接口分析
193 0
短酷无水印视频接口分析