迄今为止易用 —— 的 “盲水印“ 实现方案

news2024/11/17 17:49:06

9a69fede8b2044a79dd834e3e48f20b4.png前期回顾  

网站的打赏 —— 新一代的思路-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_57904695/article/details/136704914?spm=1001.2014.3001.5501

目录

@CSDN 彩色之外

📝 前言: 

🛠️ vue3-blind-watermark

 🤖 安装

 ♻️ 引入&使用

 🚩 盲水印测试

 🎉 显式水印 

 😶‍🌫️ 贡献


@CSDN 彩色之外

📝 前言: 

       盲水印是一种对肉眼不可见的水印技术,它允许在数字媒体如图片上添加不可见的图片或文字水印。这种技术的目的是为了防止未经授权的复制和分发,同时能够通过解码原图来证明版权归属。

     实现盲水印的原理相对直接。通常,它涉及到将图片通过离散余弦变换(DCT)、小波变换或傅里叶变换处理,以获取图片的频谱信息。随后,将水印的编码信息添加到图片的频谱中,再通过逆变换处理,生成的图片便携带了几乎无法被察觉的盲水印,但又能被准确地还原出来。

盲水印技术的特点包括:

  • 隐蔽性:盲水印的不可见性确保了它不会被轻易察觉,不会干扰用户体验,也不易被模仿。
  • 强健性:也称为鲁棒性,即使图片经过压缩、裁剪、绘画、旋转等修改,水印信息仍然可以被提取出来。
  • 不易移除性:与鲁棒性相似,但更强调在水印被察觉后,仍难以被故意移除或破坏。

盲水印技术因其隐蔽性、强健性和不易移除性,成为数字版权保护的重要工具 

 

说了这么多,其实可以感觉到了,步骤之繁琐、所以有没有简单的盲水印呐?有没有几乎我什么都不做,就实现的这样的功能啊。

有,接着下看 

🛠️ vue3-blind-watermark

  • 迄今为止 最易用 的盲水印实现方案
  • 这个插件的作用是在页面上添加一个可自动调整颜色以适应不同背景的 不可见水印,同时通过观察 DOM 变化来保证水印的持续存在(防篡改).

 🤖 安装

npm install vue3-blind-watermark

♻️ 引入&使用

  • 在你的主应用程序入口文件(例如 main.js)中,导入并使用 watermark :
import watermark from "vue3-blind-watermark";
app
	.use(watermark, {
		text: "版权归xxx所有",
	})
	.mount("#app");

完成了,你的项目已经支持了盲水印、这么简单的吗?没错,插件的开发是复杂的,但是使用一定要简洁易上手,所以看在周六加班写的份上, 点个Star 好不啦

 

 🚩 盲水印测试

  • 通过ps等工具调整图层、曝光、变形,使其隐藏的水印显现

🎉 显式水印 

  • 既然有隐藏式的水印,我们也可以加上明面上的水印,主打一个老六做派 
  • 盲水印启动后,可以根据需求是否继续使用显式水印

Q: 水印启动与否

A:  控制台会有提醒

Q:仓库否? 

 A: 点我进入👉Github

 Q: NPM文档否?
 A:点我进入👉 vue3-blind-watermark - npm (npmjs.com) 

Q: 插件原理

A:实现肉眼难以觉察 的水印,通过ps等工具调整图层、曝光、变形,使其隐藏的水印显现

 😶‍🌫️ 贡献

如果你有任何改进的建议或想要贡献代码,请随时创建 pull 请求或提交问题。Issues 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516950.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【LeetCode热题100】142. 环形链表 II(链表)

一.题目要求 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统…

GEE必须会教程—影像集合的操作方法

影像集合(Image Collection),说白了就是把一堆影像打包在一起形成的集合,我们可以用用前文讲过的矢量集合的方法来理解(http://t.csdnimg.cn/bRJOT),学习影像集合的过程中,同样需要掌…

【DL经典回顾】激活函数大汇总(八)(Maxout Softmin附代码和详细公式)

激活函数大汇总(八)(Maxout & Softmin附代码和详细公式) 更多激活函数见激活函数大汇总列表 一、引言 欢迎来到我们深入探索神经网络核心组成部分——激活函数的系列博客。在人工智能的世界里,激活函数扮演着不…

strcat的模拟实现

一:strcat函数的定义: strcat函数功能的解释: 将源字符串追加(连接)到目的字符串的后面 strcat函数要点: 源字符串必须以 \0 结束。 目标空间必须有足够的大,能容纳下源字符串的内容。 目…

使用STM32+ESP8266(ESP-01S)+点灯科技(手机端Blinker)实现远程控制智能家居

硬件准备:STM32单片机、ESP8266(ESP-01S)、CH340C下载烧录器 软件准备:STM32CubeMX、Keil uVision5、Arduino IDE、 点灯科技(手机端APP Blinker)点灯科技 (diandeng.tech)点击进入 值得注意的是&#x…

NO9 蓝桥杯单片机之串口通信的使用

1 基本概念 简单来说,串口通信是一种按位(bit)传输数据的通信方式。 其他一些知识就直接贴图吧(单工,半双工这些学过通信的同学应该都知道,可以上网查询一下具体概念。) 来源还是:…

【CSP试题回顾】201709-3-JSON查询

CSP-201709-3-JSON查询 解题思路 1. 初始化数据结构 map<string, string> strContent: 存储字符串类型属性的内容。键是属性名&#xff08;可能包含通过点.连接的多级属性名&#xff09;&#xff0c;值是属性的字符串值。vector<string> keyVec: 存储当前正在处…

酒店客房管理系统设计与实现(论文+源码)_kaic

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本酒店客房管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

SpringBoot+vue3打造企业级一体化SaaS系统

SpringBootvue3打造企业级一体化SaaS系统 简介&#xff1a;    全面提升前后端技术水平&#xff0c;独立完成全栈项目开发能力&#xff0c;快速进击全栈工程师&#xff0c;最终在面试中脱颖而出。整合后端主流技术&#xff08;Spring Boot、物理数据库隔离、加载动态权限、多…

网络基础 - 预备知识(协议、网络协议、网络传输流程、地址管理)

文章目录 1. 认识 协议2. 了解 网络协议2.1 引入 协议分层2.2 OSI 七层模型 与 TCP/IP 四层模型 3. 网络传输 流程&#xff01;&#xff01;&#xff01;3.1 网络传输流程图3.2 关于报头3.3 实例解释 传输过程&#xff08;封装与解包&#xff09; 4. 网络中的地址管理4.1 认识 …

力扣串题:字符串中的第二大数字

此题的精妙之处在于char类型到int类型的转化&#xff0c;需要运算来解决 int secondHighest(char * s) {int max1-1;int max2-1;int szstrlen(s);int i 0 ;for(i0;i<sz;i){if(s[i]>0&&s[i]<9){if((s[i]-0)>max1){max2max1;max1s[i]-0;}else if((s[i]-0)&l…

Linux I2C调试分享

I2C简介 I2C&#xff08;Inter-Integrated Circuit&#xff09;是一种多主机、两线制、串行计算机总线&#xff0c;用于连接低速外围设备到处理器或微控制器。这种通信协议由Philips Semiconductor&#xff08;现在的NXP Semiconductors&#xff09;在1980年代初期开发。 I2C…

英语四六级有线调频听力广播-厦门华厦学院有线调频听力广播系统建设深度解析

英语四六级有线调频听力广播-厦门华厦学院有线调频听力广播系统建设深度解析 由北京海特伟业任洪卓发布于2024年3月14日 随着社会的快速发展和国际交流的日益频繁&#xff0c;英语已成为我们日常生活中不可或缺的一部分。作为衡量大学生英语水平的重要标准之一&#xff0c;大学…

javaweb数据传参类型(2)

前言 友友们好呀&#xff0c;今天来分享一下对于各种数据类型传参的问题&#xff0c;今天陪伴我们的云海 目录 前言 数组集合传参 补充 日期参数 补充 Json格式数据传参 补充 路径参数 补充 今日分享 ​​​​​​​数组集合传参 类似于我们之前进行的简单的参数传递…

深度学习模型部署(五)onnx模型以及相应工具

ONNX概念 onnx不仅仅一种模型参数存储的格式&#xff0c;还是一套完整的用于描述计算函数的编程语言&#xff0c;它的作用就是定义计算图&#xff0c;他本身无法进行。 这个概念和Verilog有点像&#xff0c;一个是硬件描述语言&#xff0c;一个是模型描述语言。 onnx模型或者说…

Learn OpenGL 10 Assimp+网格+模型

Assimp 一个非常流行的模型导入库是Assimp&#xff0c;它是Open Asset Import Library&#xff08;开放的资产导入库&#xff09;的缩写。Assimp能够导入很多种不同的模型文件格式&#xff08;并也能够导出部分的格式&#xff09;&#xff0c;它会将所有的模型数据加载至Assim…

git基础命令(一)

目录 基础概念git statusgit addgit diffgit loggit commit文件可以处于以下三种状态之一远程存储库与本地存储库参考 用于知识记录。后续有新的的内容&#xff0c;例子&#xff0c;将持续更新本文档。 基础概念 工作树&#xff1a;git add 之前&#xff0c;变动内容的文件列表…

经典数组和指针笔试题解析——C语言

【本节内容】 1. 数组和指针笔试题解析 2. 指针运算笔试题解析 1. 数组和指针笔试题解析 1.1 一维数组 #include <stdio.h> int main() {int a[] { 1,2,3,4 };printf("%zd\n", sizeof(a));printf("%zd\n", sizeof(a 0));printf("%zd\n&qu…

【金三银四】掌趣科技24.3.7 H项目 服务端开发笔试题

考试题型&#xff1a; 不定项选择题 10 道 &#xff0c; 填空题 10 道 &#xff0c; 问答题 2 道 &#xff0c; 编程题 4 道 目录 不定项选择题 10 道填空题 10 道问答题 2 道编程题 4 道 不定项选择题 10 道 在TCP协议中&#xff0c;发送方的窗口大小是由两个关键因素共同决定…

三个表联合查询的场景分析-场景1:a表关联了b表和c表

本场景对应情景如下&#xff1a; 三个数据表&#xff0c;一个表的两个字段分别关联了另外两个表各自的id数据&#xff0c;可能包含多个id&#xff08;两个1对多关联&#xff09;。 目录 数据表准备 需求1、查询c表的列表数据&#xff0c;要求获得关联的b表中的name&#xf…