我使用以下代码从.txt文件自动生成幻灯片,在其中我以这种方式编写了字幕:
CAPTION 1
CAPTION 2
...
CAPTION N
这是我使用的脚本
#!/bin/bash
i=0
# loop through files
while IFS= read -r p; do
# if it's not an empty line
if ! [ -z "$p"]; then
# echo line
echo "$p";
convert -background none -font Trebuchet-MS -fill white -pointsize 60 -gravity center -draw "text 0,300 'pango:$p'" slide_template.png slides/slide-$i.png
i=$((i+1))
fi;
# pass input
done <$@
slide_template.png 只是一个空(透明) 1920x1080 png 。
我以这种方式传递.txt文件:
$ sh my_script.sh my_file.txt
它会在 / slides 中生成我的幻灯片。
现在我想在幻灯片中使用一些格式代码,例如
MY <b>CAPTION</b> 1
MY <i>CAPTION</i> 2
...
MY CAPTION N
但是我无法理解以前的代码中如何使用pango 。我需要重新定位标题栏,居中,距底部300像素。
如果我使用:
convert -background none -font Trebuchet-MS -fill white -pointsize 60 -gravity center -draw "text 0,300 '$p'" slide_template.png slides/slide-$i.png
我得到:
如果我使用此行:
convert -background none -font Trebuchet-MS -fill white -pointsize 60 -gravity center pango:"$p" slide_template.png slides/slide-$i.png
我得到了两个文件(为什么?),其中第一个文件被正确解析,但裁剪为文本大小:
第二个是背景。这样的文件名是 slide-0-0.png 和 slide-0-1.png
答案 0 :(得分:1)
已解决:我需要将一个图像传输到另一个图像。
第一个包含格式化的代码,第二个将管道数据覆盖到背景上。
axios.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone'
})
.then(function (response) {
console.log(response);
fetchListStart();
})
.catch(function (error) {
console.log(error);
});