projektgopher / laravel-ffmpeg-tween
v0.8.0
2024-03-19 22:08 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^10.0|^11.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- larastan/larastan: ^2.9
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.0|^8.0
- orchestra/testbench: ^8.11|^9.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
README
FFMpeg的命令可能难以理解。以下是一个例子:
if(lt(t\,5)\,((w*7/8)-text_w-200)\,if(gt(t\,5+2)\,((w*7/8)-text_w)\,((w*7/8)-text_w-200)+((((w*7/8)-text_w)-((w*7/8)-text_w-200))(if(eq(((t-5)/2)\,0)\,0\,if(eq(((t-5)/2)\,1)\,1\,pow(2\,-10((t-5)/2))*sin((((t-5)/2)*10-0.75)*2.0943951023932)+1))))))
这个极其疯狂的字符串将仅计算文本元素的EaseOutElastic
。您如何将此更改为使用缓动函数EaseOutBounce
?这不可能。
此软件包允许您以流畅的方式构建这些字符串,易于维护,并且对PHP和Laravel开发者来说感觉熟悉。以下示例将输出与上述相同的字符串,但想象一下这将多么容易更改
$finalXpos = '(w*7/8)-text_w'; $x = (new Tween()) ->from("{$finalXpos}-200") ->to($finalXpos) ->delay(Timing::seconds(5)) ->duration(Timing::seconds(2)) ->ease(Ease::OutElastic);
API是根据GreenSock动画平台(GSAP)设计的,并且所有缓动数学都从Easings.net移植而来。这些数学字符串的字符串化是从此Gitlab仓库移植的。
安装
您可以通过composer安装此软件包。
composer require projektgopher/laravel-ffmpeg-tools
用法
在Laravel应用程序外部使用
目前,此软件包只能在Laravel应用程序中使用,但有计划将核心功能提取到单独的软件包中,以便在不依赖框架的情况下使用。
测试
变更日志
有关最近更改的更多信息,请参阅RELEASES
贡献
有关详细信息,请参阅CONTRIBUTING
安全漏洞
有关如何报告安全漏洞,请参阅我们的安全策略
致谢
非常感谢EXACTsports对本软件包开发的赞助。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件