netlogix/nximageoptimizer

在资源发布者处理图像时优化图像

安装数: 15,839

依赖项: 0

建议者: 0

安全性: 0

星标: 0

关注者: 6

分支: 0

公开问题: 3

类型:typo3-cms-extension

5.0.0 2023-12-05 05:25 UTC

README

TYPO3 V12 Minimum PHP Version GitHub CI status

此TYPO3扩展在发布时优化(jpg,png,gif,svg)图像以供网络展示。它将为每个渲染的图像生成WebP版本,并将其提供给客户端。

兼容性

此扩展的当前版本(dev-master)已在TYPO3 12上与PHP 8.1,8.2和8.3进行了测试。

需求

此扩展需要额外的第三方工具。

  • jpegoptim: 优化/压缩JPEG文件的实用程序
  • optipng: OptiPNG是一个PNG优化器,可以将图像文件重新压缩到更小的尺寸,而不会丢失任何信息
  • pngquant: pngquant是一个用于PNG图像有损压缩的命令行实用程序和库
  • svgo: 用于优化SVG文件的Node.js工具
  • gifsicle: 创建、操作和优化GIF图像和动画

您应使用您选择的包管理器安装它们。

Ubuntu示例

以下是在Ubuntu上的安装示例

sudo apt-get install jpegoptim optipng pngquant gifsicle
sudo npm install -g svgo

macOS示例(使用Homebrew

brew install jpegoptim
brew install optipng
brew install pngquant
brew install svgo
brew install gifsicle

macOS示例(使用MacPorts

port install jpegoptim
port install optipng
port install pngquant
port install svgo
port install gifsicle

安装

通过composer安装包。

composer require netlogix/nximageoptimizer

将以下内容放入您的 .htaccess 文件中,并将图像替换为WebP版本。

	# Check if browser support WebP images
	# Check if WebP replacement image exists
	# Serve WebP image instead
	RewriteCond %{HTTP_ACCEPT} image/webp
	RewriteCond %{DOCUMENT_ROOT}/$0.webp -f
	RewriteRule (.+)\.(jpe?g|png)$ $0.webp [T=image/webp,E=accept:1]

告诉每个缓存代理根据“接受”头缓存

	RewriteRule (.+)\.(jpe?g|png|webp)$ - [env=POTENTIAL_WEBP_IMAGE:1]
	Header merge vary accept env=POTENTIAL_WEBP_IMAGE

故障排除

Ubuntu的imagemagick源包未声明对libwebp-dev的构建依赖。因此,imagemagick在没有webp支持的情况下构建。要修复此问题,请安装webp包。

sudo apt-get install webp