mrfakename / php-gif-reborn
此包已被弃用,不再维护。作者建议使用 phpgif/phpgif 包。
v3.0.4
2022-11-10 19:37 UTC
Requires
- php: >=7.4.0
README
什么是 phpgif?
phpgif 是一个用于生成 GIF 的 PHP 库 - 简单易用!
安装 phpgif
使用 Composer
在终端或命令提示符中运行以下命令
composer require phpgif/phpgif
use phpgif\GIF\GifGenerator
不使用 Composer
当使用共享主机时,许多主机提供商不允许使用 Composer。请使用以下系统安装 PHP-GIF-Reborn。
- 下载仓库
- 打开 src/Gif 文件夹
- 将 GIFEncoder.php 和 GIFGenerator.php 复制到您的文件中
- 将以下代码粘贴到文件顶部
include 'GIFEncoder.php'; include 'GIFGenerator.php';
入门指南
创建一个 PHP 文件并在文件开头添加以下头信息
// Caching disable headers header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); // Output as a GIF image header ('Content-type:image/gif'); // Import the GIFEncoder and GIFGenerator PHP files include 'GIFEncoder.php'; include 'GIFGenerator.php';
在下一条线中,您可以通过首先初始化 GIFGenerator 对象并创建一个包含所有图像帧的数组来创建一个 GIF 图像
// Initialize a new GIFGenerator object $gif = new GIFGenerator(); // Create a multidimensional array with all the image frames $imageFrames = array( 'repeat' => false, 'transparent' => false, 'frames' => array( array( 'image' => './images/newyear.jpg', 'text' => array( array( 'text' => 'Hello GIF frame 1', 'fonts-color' => '#000', 'x-position' => 140, 'y-position' => 138 ) ), 'delay' => 100 ), ) );
最后,生成图像并在屏幕上 echo
结果
echo $gif->generate($imageFrames);
示例
一个更完整的示例。您可以将以下代码复制到文件中,并在浏览器中执行以查看更完整的结果。如您所见,您不需要在 GIF 图像中使用文本,并且可以根据需要添加每帧的文本,以及每个 GIF 图像的帧数。
<?php // Caching disable headers header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); // Output as a GIF image header ('Content-type: image/gif'); // Include the GIFEncoder and GIFGenerator PHP files include 'GIFEncoder.php'; include 'GIFGenerator.php'; // Initialize a new GIFGenerator object $gif = new GIFGenerator(); // Create a multidimensional array with all the image frames $imageFrames = array( 'repeat' => 5, 'transparent' => true, 'frames' => array( array( 'image' => './images/newyear.jpg', 'text' => array( array( 'text' => 'Hello GIF frame 1', 'fonts' => './fonts/Lato-Light.ttf', 'fonts-size' => 30, 'angle' => 0, 'fonts-color' => '#000', 'x-position' => 140, 'y-position' => 138 ) ), 'delay' => 100 ), array( 'image' => './images/newyear.jpg', 'text' => array( array( 'text' => 'Hello GIF frame 2', 'fonts' => './fonts/Lato-Light.ttf', 'fonts-size' => 15, 'angle' => 0, 'fonts-color' => '#000', 'x-position' => 140, 'y-position' => 138 ), array( 'text' => 'Hello GIF frame 2', 'fonts' => './fonts/Lato-Light.ttf', 'fonts-size' => 15, 'angle' => 0, 'fonts-color' => '#000', 'x-position' => 140, 'y-position' => 108 ) ), 'delay' => 100 ), array( 'image' => './images/newyear.jpg', 'delay' => 50 ) ) ); echo $gif->generate($imageFrames);
许可 & 致谢
本软件根据 MIT 许可证发布。
原始代码
phpgif 基于 PHP-GIF
GIFEncoder
GIFEncoder.class.php 是由 László Zsidi 修改的 GIFEncoder PHP 类。