У меня есть куча PDF-файлов, из которых я хочу снять фильм.

Я использую sips (в Mac OS), чтобы преобразовать PDF-файлы в .png, а затем создать фильм с помощью ffmpeg.

Пока я делаю это:

for i in {2..9087}
do 
sips -z 1024 -s format png fig${i}.pdf --out png/fig${i}.png
done

с последующим

ffmpeg -qscale 5 -r 20 -b 9600 -i fig%d.png movie.mp4

Однако я обнаружил, что ffmpeg борется с прозрачностью .png (он делает фильм с размытыми объектами). Я читал, что желательно вводить ffmpeg с непрозрачными .pngs. Итак, у моего рабочего процесса есть недостаток, поскольку у sips, по-видимому, нет способа экспортировать непрозрачные файлы png из pdf.

Интересно, кто-нибудь уже решил эту проблему, и хотел бы поделиться решением.

1 ответ1

1

Как я сказал в своем комментарии, самый простой способ - это просто использовать формат файла, который не поддерживает прозрачность, например .jpg. Если вам нужно придерживаться .png, вы можете использовать команду convert из пакета ImageMagick для удаления прозрачности:

for i in {2..9087}
do 
   sips -z 1024 -s format png fig${i}.pdf --out png/fig${i}.png
   convert png/fig${i}.png -background=white -flatten +matte aa.png && 
   mv aa.png png/fig${i}.png
done

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .