水印的定义
在 WIKI 中,水印的定义是:
水印(watermark)是一种能让人识别纸上图案的技术,当光线照射纸张时,纸张上会显现出各种不同阴影,这些阴影组成的图案就是水印。
而在思源中,处理水印的方式是使用一款 pdfcpu
制作的 watermark
来处理的。
由于市面上有关 watermark
水印的使用方法入门较高,且不契合思源,于是就有了这篇文章的产生。
选项如何填写/配置/使用?
开始使用水印。首先你需要在思源【设置(快捷键 alt + p)】-> 【导出】这里面找到下面这两个选项:
水印文本或水印文件路径
这个选项支持输入三种格式的内容,分别是文本(text)、图片(image)和 PDF 文档(pdf)。
官方为此贴心的提供了自动匹配机制,也就意味着你只需填写以上支持内容即可。例:
支持格式 | 填写例子 |
---|---|
文本(text) | 我是文本 |
图片(image) | D:\logo.png |
PDF 文档(pdf) | D:\test.pdf |
设置和默认效果如下:
这里的图片(image)和 PDF 文档(pdf)需要注意的是:要你自己机器路径里面有这些文档,才可以正常识别滴~
可惜这里 PDF 没有办法在后面添加 :X
(X 是指定 PDF 的页数,意思是指定获取 PDF 第几页用来做水印)。目前的操作逻辑是:PDF 一页页对应模式。 不过没关系,谁会用 PDF 来做水印呀~
水印位置、大小和样式
重点来啦,配置水印的位置、大小、样式都在这个选项。在思源里,经过我的测试目前可以用的主要是这几个:
参数 | 参数解释 | 参数使用例子 | 使用例子简写 |
---|---|---|---|
position | 水印位置 | position:center | pos:c |
scalefactor |
水印放大缩小 | scalefactor:0.5 abs/rel | scale:0.5 rel |
strokecolor | 水印文字描边颜色 | strokecolor:#808080 | strokec:#808080 |
fillcolor | 水印文字颜色 | fillcolor:#808080 | color:#808080 |
rendermode | 水印文字渲染模式 | rendermode:2 | mo:2 |
rotation | 水印的旋转角度 | rotation:0 | rot:0 |
opacity | 水印的不透明度 | opacity:0.6 | op:0.6 |
margins | 水印的边距 | margins:5 | ma:5 |
backgroundcolor | 水印的边距框背景颜色 | backgroundcolor:#808080 | bgcolor:#808080 |
border | 水印的边界框 | border:7 | bo:7 |
在这里你可以同时配置多个参数。但是要遵守以下规则:
1)每个参数都要写成这种形势(其中符号 **:**
要使用英文符号):< 参数 > : < 内容 >
2)多个参数之间的要用英文 **,**
符号区分开来:< 参数 > : < 内容 >, < 参数 > : < 内容 >
例如:
position:center, color:#808080, op:0.6 # 正确
position:center, bgcolor:#808080,op:0.6 # 错误(原因:,符号中文)
pos:c, rot:-90, op:0.6 # 错误(原因::符号中文)
position 位置
在 Watermark
中,位置被分为以下几个部分:
这里的规则,我举个例子,比如我要把水印设置在【顶部】并且【居中】的情况,那么就可以这样拼接:
最后拼接完成的 TC
,修改为小写 tc
,然后在前面添加 pos:
。完整内容:pos:tc
。
为了更加方便的使用,Watermark
提供了简写的方式,比如这里提到的 position
就可以用 pos
来代替。顶部 Top
可以用 T
来代替,以此类推...
scalefactor 放大缩小
注意这里的 scalefactor
选项是有输入区间的:在最小 0.0
和最大 1.0
之间的数值,如:0.7
。
在这里还有个可选项,分别是:绝对位移 abs、相对位移 rel,属于可填可不填,它们的区别在于:
1)绝对位移(abs): 绝对位移是指水印相对于 PDF 页面的固定位置。
2)相对位移(rel): 相对位移是指水印相对于 PDF 页面的大小进行定位。
绝对位移是按照固定的点数来定位水印,而相对位移是按照页面宽度和高度的比例来定位水印。
strokecolor、fillcolor、rendermode 文字颜色
水印的颜色包括:水印描边颜色和水印本身的填充颜色两种。在这里我放在一起说是因为它们的参数很相似,均可接受以下参数:
1)RGB 浮点,即:RGB(r, g, b)。例:color:0.6 0.2 0.9
其中 0.6
是 R
,0.2
是 G
,0.9
是 B
。
2)RGB 十六进制,即:#RRGGBB。例:color:#000000
。
3)Watermark 中有提前预设好的值,但经测试,并未生效。
注意这里还有一个 rendermode
水印文字渲染模式选择。它默认支持输入以下参数:
参数解释 | 参数值 |
---|---|
应用填充颜色 | 0 |
应用描边颜色 | 1 |
同时应用填充和描边颜色 | 2 |
如果你同时设置了水印描边颜色和水印本身的填充颜色两种,又想同时将其应用,只需要添加一个 mo:2
即可。
rotation 旋转
注意这里的 rotation
选项是有输入区间的:即在 -180.0
和 180.0
之间的角度(可以输入负数),如:-90
。
说到旋转,就不得不提到在 Watermark
里的对角线。对角线 diagonal
,其实它是一个参数,例:diagonal:2
或者简写成 d:2
,它默认参数是 1
,只能接受两个参数:
1)从左下角至右上角,记作 1
2)从左上角到右下角,记作 2
**很可惜,在思源中,****diagonal:2**
这种写法暂时不支持。所以默认的对角线就只有**diagonal:1**
即从左下角至右上角。并且基于该对角线进行旋转!
opacity 不透明度
这里的 opacity
选项是有输入区间的:在最小 0.0
和最大 1.0
之间的数值,如:0.3
。
其中 1.0
是完全不透明,0.0
是完全透明。
margins 边距框
在水印的边距 margins
中,你需要先设置背景颜色 backgroundcolor
参数,举例:backgroundcolor:#beded9
或者是使用简写:bgcolor:#beded9
。然后在设置水印的边距 margins
,它可接受以下的这两种方式:
1)直接设置四个边框。例:margins:5
。
2)为四个边框单独设置边距。这四个参数分别为 < 顶部 > < 右侧 > < 底部 > < 左侧 >:例:margins:5 0 5 0
。
border 边界框
在水印的边界框 border
中,你需要和上面的边距框 margins
配合使用。它的参数是这样子的,举例:border:7 round 0.3 0.7 0.7
或者是使用简写:bo:7 round 0.3 0.7 0.7
。你还可以使用 bo:7
表示我就要一个边界,这样也是可行的。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于