今天偶发想法,想给 Windows 系统下设置一个固定的右键菜单命令,一键添加预设的文字作为水印。
查了一下 ffmpeg 官方文档,并没有出现 watermark 字样。
水印的概念在 ffmpeg 中叫 overlay (覆盖物)。
于是我构造了这样一个命令:
ffmpeg -i D:documentduxing.jpg -vf "drawtext=fontfile=simhei.ttf:fontcolor=white:fontsize=100:text='笃行天下':x=W-tw-100:y=H-th-100:shadowy=2" 8x.jpg
解释
- fontfile=simhei.ttf,我设置路径为:c:windowsfontssimhei.ttf ,并未生效;无奈,于是将字体文件拷贝到了执行目录下,ok
- x=W-tw-100:y=H-th-100, 文本的位置,放置图片右下方100像素位置;W、H 表示原图的宽、高;tw、th 表示文本宽高;在减去 100 作为间距
参考文档
- ffmpeg drawtext: https://ffmpeg.org/ffmpeg-filters.html#toc-drawtext-1
update 2021.04.06
如此拼写字体文件路径可以生效:
ffmpeg -i WeChatApp_2021-04-06_21-04-02.png -vf "drawtext=fontfile=c\:/windows/fonts/simhei.ttf:fontcolor=white:fontsize=100:text='死宅程序猿':x=W-tw-100:y=H-th-100:shadowy=2" g8up.jpg