python之 ffmpeg给图片添加文字

  • Post author:
  • Post category:python



目录


ffmpeg-drawtext


ffmpeg给图片添加文字(同一行上添加不同字体大小的文字)


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给图片添加文字(同一行上添加不同字体大小的文字)

前期输入准备:

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

输出:

  • 图片img1-2.png

(1)前期输入准备:

图片img1.png:

font字体文件:

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

import subprocess
import requests

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


# x=w-tw-th:y=h-th, 文本的位置,放置图片右下方位置;w、h 表示原图的宽、高;tw、th 表示文本宽高;在减去th 作为间距
cmdLine = 'ffmpeg  -i img1.png  -vf drawtext=fontfile=MiSans-Normal.ttf:text="面巾纸":x=110:y=250:fontsize=62:fontcolor=white:shadowy=0,' \
          'drawtext=fontfile=MiSans-Normal.ttf:text="我们的":x=120+th/40*62*3:y=270:fontsize=40:fontcolor=white:shadowy=0 -y img1-3.png'

subprocess.call(cmdLine, shell=True)

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

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

移步至

python之 ffmpeg给图片添加一行或多行文字_水w的博客-CSDN博客



版权声明:本文为qq_45956730原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。