Hexo 文章图片添加水印,不用云处理

关于博客文章图片添加水印,网上差很少都是再说使用某某云储存,能够有免费额度,云储存能够对图片进行添加水印。html

可是你须要考虑一点,若是博客网站越弄越大,图文并茂愈来愈多,那么你照样须要掏钱。git

因此,一旦你读了这篇文章,你将会拥有一个本地构建静态网站时,就自动生成水印图片。github

这是一个 Hexo 插件,它能够为你的文章图片添加水印。shell

Demo-Centos7 安装须要的软件环境-使用rpm安装JDKnpm

插件地址-SpiritLing/hexo-images-watermarkapi

目前插件能够直接在 hexo 官网 插件 上搜索到hexo

下面内容都是在插件的 README.md 上复制过来的
目前个人正式版博客挂载在个人 Github 仓库 blog,能够在个人仓库直接访问到插件svg

hexo-images-watermark

Build Status npm version npm package download NPM License

一款用于 Hexo 静态博客网站生成时对图片添加水印。post

不对原图产生任何影响,在网站静态页构建过程当中将原图读取,输出添加了水印的图片。测试

在构建的静态网站中不会存在原图,只存在水印图片。

必定要阅读最后的提示事项,包含现有版本的支持状况和即将添加的功能

使用 npm 安装插件

npm install hexo-images-watermark

在站点配置文件 _config.yml 中进行以下配置:

watermark:
    enable: true
    textEnable: true
    rotate: -45
    gravity: centre

hexo generate 运行时会自动为你的 _post 目录下的图片添加水印,新的图片将会放到 public 目录中对应的位置。

必备配置参数

enable

默认值:无
说明true 将会执行图片添加水印,false 将会不执行添加

textEnable

默认值:false
说明:是否使用文原本添加水印(❌警告:目前不支持文本和图片同时添加水印)

imageEnable

默认值:false
说明:是否使用图片来添加水印(❌警告:目前不支持文本和图片同时添加水印)

其余参数

text

默认值:使用配置文件中的url,一旦url不存在直接显示做者名字(SpiritLing)
说明:当你使用的文字过长时,一旦转为图片后大于待加水印的图片尺寸,则会出现错误。

fontPath

默认值:undefined,使用 text-to-svg 自带字体
说明:本身加载须要的字体,支持单个字体文件,不区分中英文;若是纯中文,请只加载中文字体,例:须要加载 source/static/font/custom.ttf 字体直接将其写入到配置文件中便可

color

默认值:rgb(169,169,167)
说明:颜色可使用 rgb,rgba,#xxxxxx以及red名字式的。⚠️只对text有效

gravity

默认值:southeast
说明:设置水印位置处于什么方向,以 上北下南左东右西 来肯定

参数可用值:

类型 说明 备注
centre 中央 图片正中间
north 上方中间
west 左边中间
south 下边中间
east 西 右边中间
northwest 东北 左上角
southwest 东南 左下角
southeast 西南 右下角
northeast 西北 右上角

fontSize

默认值:18
说明:文本字体大小,⚠️只对text有效

watermarkImage

默认值:watermark.png
说明:水印图片,放置在source文件根路径的图片名称;⚠️大小不要超过任何一张文章中的图片,不然会出错,能够搭配缩放进行使用

width

默认值:50
说明:对图片进行缩放。⚠️只对image有效

height

默认值:50
说明:对图片进行缩放。⚠️只对image有效

rotate

默认值:0
说明:旋转角度,如45表明逆时针45度,-45表明顺时针45度

background

默认值:transparent
说明:配合text和rotate使用,指的是文字转成的图片一旦旋转会出现多余空白,设置这些地方的颜色,通常透明色便可

使用注意事项⚠️⚠️⚠️

  1. 文字不要过长过大,水印图片不要过大(太大可使用缩放,⚠️可是缩放是全局性的),不然都会出现错误,终止生成静态页面
  2. 暂不支持图片和文字共同添加
  3. 目前只支持 *.jpg,*.jpeg*.png 两种格式图片,而且只支持source/_posts文件夹下的图片,也就是文章本地图片;同时也不支持远程图片
  4. 水印图片也不支持远程和非soucre根路径下的文件,也是只支持 *.jpg,*.jpeg*.png 两种格式图片
  5. 不支持循环满图添加水印
  6. 请使用 1.1.x 以上版本, 1.0.x 是进行Hexo api相关测试时使用的,版本杂乱无章,使用 1.0.x 版本出现任何问题,概不理会

TODO LIST

  • [x] 文字水印

    • [x] 自定义文字,颜色,大小
    • [X] 自定义字体 - 2019-12-24 Done
    • [ ] 支持循环添加
    • [ ] 超限处理
  • [x] 图片水印

    • [X] 自定义水印图片
    • [ ] 远程水印图片
    • [ ] 支持循环添加
    • [ ] 超限处理
  • [x] 位置

    • [x] 固定位置:九个方位
    • [ ] 自定义 top,left
  • [x] 旋转
  • [x] 缩放(仅限图片)
  • [ ] 其余格式支持
本文做者: SpiritLing
版权声明: 本博客全部文章除特别声明外,均采用 BY-NC-SA 4.0 许可协议。转载请注明出处!
SpiritLing'Blog
首发地址
插件地址
相关文章
相关标签/搜索