分页: 1 / 1

问一下大侠:webp怎么创建缩略图

发表于 : 2021年1月29日 18:39
寂默心流
debian+nginx+mariadb+php平台

可以上传webp图片,可以正常显示,但无法创建缩略图,最后的结果是图片格式先进了,显示反而更慢了,尴尬。 :不易:

Re: 问一下大侠:webp怎么创建缩略图

发表于 : 2021年1月31日 13:38
寂默心流
  平台:php 8.0.1,phpBB3 3.3.3

  事先搞定了webp格式的上传和显示,但一直不能创建缩略图,导致用了更先进的图片格式,反而显示更慢。经过很吃力的摸索,发现了一个办法,现共享如下:

  进入phpBB3目录下的includes目录,打开functions_posting.php文件,找到 Return supported image types这一段,加上红字部分。
case IMAGETYPE_PNG:
$new_type = ($format & IMG_PNG) ? IMG_PNG : false;
break;

// WBMP
case IMAGETYPE_WBMP:
$new_type = ($format & IMG_WBMP) ? IMG_WBMP : false;
break;

// WEBP
case IMAGETYPE_WEBP:
$new_type = ($format & IMG_WEBP) ? IMG_WEBP : false;
break;
  找到function create_thumbnail($source, $destination, $mimetype)这一段,加上红字部分。
case IMG_JPG:
@ini_set('gd.jpeg_ignore_warning', 1);
$image = @imagecreatefromjpeg($source);
break;

case IMG_PNG:
$image = @imagecreatefrompng($source);
break;

case IMG_WBMP:
$image = @imagecreatefromwbmp($source);
break;

case IMG_WEBP:
$image = @imagecreatefromwebp($source);
break;
    
case IMG_PNG:
imagepng($new_image, $destination);
break;

case IMG_WBMP:
imagewbmp($new_image, $destination);
break;

case IMG_WEBP:
imagewebp($new_image, $destination);
break;

Re: 问一下大侠:webp怎么创建缩略图

发表于 : 2021年1月31日 14:29
davidyin
:ugreat:

Re: 问一下大侠:webp怎么创建缩略图

发表于 : 2021年1月31日 14:39
寂默心流
davidyin 写了: 2021年1月31日 14:29:ugreat:
网上没人说,这还真是我的原创发现,找对地方对于我这个非IT人士来说也挺不容易的。 :socool:

Re: 问一下大侠:webp怎么创建缩略图

发表于 : 2021年5月5日 04:35
davidyin
最新版的 3.3.4, 开始支持 webp 格式了。