GIFDecoder的排错以及修改另附完整代码和demo
程序员文章站
2022-05-28 16:32:22
...
前言
好久没有写技术类的博客了,今天有些小的收获,记录下来,留作备份
Gif图片的处理
由于业务需求,需要对gif动图的第一帧进行截取,然后我就搜索,发现了GIFDecoder这样的一个类,是做gif图片的处理的,怎奈国内人博客环境还是那么差,各种网站博客到处抄抄抄,没有一个完整的内容,经过多个站的资料整理,终于能用了。
出现了异常
在运行demo的时候,遇到了显示错误的问题
Notice: Undefined offset: 4 in /Applications/XAMPP/xamppfiles/htdocs/giftest/gifdecoder.class.php on line 83
查看源码发现83行是这样的
functionGIFReadExtensions() {
GIFDecoder::GIFGetByte(1);
if ($this->GIF_buffer [0] == 0xff) {
for (;;) {
GIFDecoder::GIFGetByte(1);
if (( $u = $this->GIF_buffer [0] ) == 0x00) {
break;
}
GIFDecoder::GIFGetByte($u);
if ($u == 0x03) {
$this->GIF_anloop = ( $this->GIF_buffer [1] | $this->GIF_buffer [2] 8