python之 ffmpeg给图片添加一行或多行文字

ffmpeg-drawtext

参数:

  • drawtext:绘制文本,也就是文字水印,相关参数第一个似乎要写=,其它参数写:。默认字体 Sans;
  • fontfile:字体文件,windows好像会自动定位到C:\Windows\Fonts   可以在这个http://www.downyi.com/key/ttfziti/网站下载字体;
  • text:文字水印内容;
  • fontsize:水印字体大小,直接填数字;
  • box --是否使用背景框,默认为0;
  • boxcolor --背景框的颜色;
  • borderw --背景框的阴影,默认为0;
  • bordercolor --背景框阴影的颜色;

 我们可以在终端输入下列命令,执行该条命令来查看ffmpeg-drawtext具体全部的参数,

ffmpeg --help filter=drawtext

使用ffmpeg-drawtext给图片添加文字

前期输入准备:

  • 图片img1.png
  • font字体文件:otf格式或ttf格式都可以。可以在这个http://www.downyi.com/key/ttfziti/网站下载字体;

输出:

  • 图片img1-2.png

(1)前期输入准备:

图片img1.png:

font字体文件:

 (2)在pyCharm中执行下列python代码,

import subprocess

"""ffmpeg加文字水印
drawtext:绘制文本,也就是文字水印,相关参数第一个似乎要写=,其它参数写:。默认字体 Sans
fontfile:字体文件,windows好像会自动定位到C:\Windows\Fonts   下载字体http://www.downyi.com/key/ttfziti/
text:文字水印内容
fontsize:水印字体大小,直接填数字
box --是否使用背景框,默认为0
boxcolor --背景框的颜色
borderw --背景框的阴影,默认为0
bordercolor --背景框阴影的颜色
"""

cmdLine3 = 'ffmpeg  -i img1.png  -vf "drawtext=fontfile=adobe楷体.otf:text="水印字体":x=200:y=200:fontsize=30:fontcolor=yellow:shadowy=0,' \
           'drawtext=fontfile=adobe楷体.otf:text="水印字体大小,直接填数字表情。":x=0:y=250:fontsize=25:fontcolor=yellow:shadowy=0"   -y img1-2.png'
subprocess.call(cmdLine3, shell=True)

(3)输出图片img1-2.png,可以看到多行的文字已经添加上去了,

 

OK。

猜你喜欢

转载自blog.csdn.net/qq_45956730/article/details/125746626