CSDN博客中图片上的水印

前两天用CSDN-markdown贴博客文章的时候,顺手放了张gif动画,预览效果的时候发现,就连gif动画图片的每一帧也都给加了水印(这个功能太强了,怪不得我说怎么即时显示GIF图片的时候突然变得卡了,哈哈)。

但是有的时候我们是不想加水印的啊,CSDN-markdown编辑器的上传图片窗口里面并没有这个选择水印添加与否的选项啊。这个怎么办呢?

考虑到CSDN-markdown插入图片也是通过自动生成图片链接代码的形式实现的,我们用下图为例,对代码进行了仔细的近距离观察:

下面的效果图中水印已经添加了:
这里写图片描述

下面是插入图片的时候csdn-markdown编辑器中生成的代码:

![这里写图片描述](http://img.blog.csdn.net/20170115141115170
?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3RlcmVvaG9tb2xvZ3k=
/font/5a6L5L2T/fontsize/400
/fill/I0JBQkFCMA==/dissolve/70/gravity/NorthWest)

实际上知道参数用Base64加密算法之后,我调整了:

![这里写图片描述](http://img.blog.csdn.net/20170115141115170
?watermark/2
/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3RlcmVvaG9tb2xvZ3k=
/font/Q2FsaWJyaQ==/fontsize/400/fill/IzAwMTExMQ==
/dissolve/90/gravity/Center)

对上面的链接作仔细观察,发现有“?watermark”字样。接下来尝试把代码中“?watermark”后面的部分去掉, 即:

![这里写图片描述](https://img-blog.csdn.net/20170115141115170)

效果图是:
这里写图片描述

水印已经消失了!

水印中text后面对应的,原来是添加的水印文本经过Base64算法加密之后的代码,可以通过这里在线转化。添加水印的时候,似乎解码不支持中文(改成加密的中文可能出现乱码)。

注意到水印最后的默认值通常是 SouthEast, 这个可以改成 NorthWest, NorthEast, SouthWest, Center等等,它们定义了水印在图片中的位置。当然,还有 font, fontsize, disolve 等,定义水印字体、字号、跟图片融合的方式等等,这些似乎都表示在链接之中了。

我发现,这里的介绍更早、更详细:

继续研究水印的URL参数:

watermark/2/text/ICAgICAgICAgICAgR2FtZSBpcyBvdmVy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast

第1个参数,watermark,值为数字“2”,改变其为1,2,3,4,5,测试发现,1,4,5均不能正常解析,2.1,2.2等介于2,3之间的数也无法解析,2,3可以正常解析,且3的颜色比2的白
第2个参数:text,可以看出是Base64加密后的,解密后为:” Game is over”,可以用其他字符串Base64之后替换

第3个参数:font,估计是字体,但没弄清楚具体的编码方式

第4个参数:fontsize,改成800后,不显示水印,改成200后,水印变成原来一半大小

第5个参数:fill,水印颜色的Base64,解码后为#BABAB0,同参数2,Base64之后可改变颜色

第6个参数:dissolve,类似于透明度,值越大,水印显示越明显

第7个参数:gravity,水印在图片中的位置,测试可用值为8个方向的英文单词,如NorthWest、East、South等,还有个Center,表示水印在中间位置

上面提到font字体参数的加密方式不是Base64, 如果属实则推测应该在下面几种里面,但我懒得一个个尝试了【实际上,我尝试了下发现仍然用的是Base64加密算法,没错!所以不用尝试下面列出的其它算法了】

编码解码相关→EncodeUtils.java→Test

URL编码 urlEncode
URL解码 urlDecode
Base64编码 base64Encode、base64Encode2String
Base64解码 base64Decode
Base64URL安全编码 base64UrlSafeEncode
Html编码 htmlEncode
Html解码 htmlDecode

加密解密相关→EncryptUtils.java→Test

MD2加密 encryptMD2ToString、encryptMD2
MD5加密 encryptMD5ToString、encryptMD5
MD5加密文件 encryptMD5File2String、encryptMD5File
SHA1加密 encryptSHA1ToString、encryptSHA1
SHA224加密 encryptSHA224ToString、encryptSHA224
SHA256加密 encryptSHA256ToString、encryptSHA256
SHA384加密 encryptSHA384ToString、encryptSHA384
SHA512加密 encryptSHA512ToString、encryptSHA512
DES加密后转为Base64编码 encryptDES2Base64
DES加密后转为16进制 encryptDES2HexString
DES加密 encryptDES
DES解密Base64编码密文 decryptBase64DES
DES解密16进制密文 decryptHexStringDES
DES解密 decryptDES
3DES加密后转为Base64编码 encrypt3DES2Base64
3DES加密后转为16进制 encrypt3DES2HexString
3DES加密 encrypt3DES
3DES解密Base64编码密文 decryptBase64_3DES
3DES解密16进制密文 decryptHexString3DES
3DES解密 decrypt3DES
AES加密后转为Base64编码 encryptAES2Base64
AES加密后转为16进制 encryptAES2HexString
AES加密 encryptAES
AES解密Base64编码密文 decryptBase64AES
AES解密16进制密文 decryptHexStringAES
AES解密 decryptAES

——原来,每上传一幅图片,服务器都同时准备这么多不同的面孔?是保存了不同的版本,还是用的时候临时生成呢?

不论如何,这对于我来说,相当于 CSDN-markdown博客编辑器,在提供强大的写博客服务的同时(包括对数学公式LaTeX的支持),附带提供了一种在线的、对2MB以下的、包括动态多帧GIF图片在内的各种图片格式(png,jpg等不在话下)添加部分可以定制的文字水印的功能。 做产品做得这么细心和用心,真是少见啊。

又一个喜欢CSDN-markdown写博客的理由。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值