moc / imageoptimizer

流包,用于优化生成的缩略图图像(jpg、png、gif、svg)以供网页展示。

安装量:90,315

依赖: 0

建议者: 0

安全: 0

星星: 30

关注者: 7

分支: 14

开放问题: 5

类型:neos-package

4.0.0 2019-08-20 14:07 UTC

This package is auto-updated.

Last update: 2024-09-04 20:14:13 UTC


README

Scrutinizer Code Quality Latest Stable Version Total Downloads License

简介

Neos CMS / Flow 框架包,用于优化生成的缩略图图像(jpg、png、gif、svg 等)以供网页展示。

由于总是为缩略图创建副本,因此原始文件永远不会受到影响。

渲染过程中非阻塞(异步)优化。

使用 jpegtran、optipng、gifsicle 和 svgo 或可定制的替代品进行优化。

应适用于 Linux、FreeBSD、OSX、SunOS 及 Windows(目前仅测试了 Linux 和 FreeBSD)。

兼容 Neos 1.x - 5.x / Flow 1.x - 6.x

仅支持本地文件系统(暂不支持 CDN)(见 #10)

安装

需要 npm(node.js)才能正常工作,尽管也可以不安装 npm 手动安装二进制文件。

composer require "moc/imageoptimizer" "~4.0"

确保已全局安装图像处理库 jpegtran(JPG)、optipng(PNG)、gifsicle(GIF)和 svgo(SVG)。如果需要,可以跳过库,但请确保禁用那些 mimetypes。

或者可以使用 npm 安装它们

# Globally
npm install -g jpegtran-bin optipng-bin gifsicle svgo

# Locally
npm install --prefix Packages/Application/MOC.ImageOptimizer/Resources/Private/Library

配置

使用 Settings 配置,可以调整多个选项。

可以禁用特定文件格式的优化。

此外,可以根据优化库调整优化级别(png & gif)、渐进(jpg)、美观(svg)等选项。

可以配置全局可用的二进制文件,或针对特定格式。

启用设置 MOC.ImageOptimizer.useGlobalBinary 并在 MOC.ImageOptimizer.globalBinaryPath 中配置路径。

使用替代库进行优化

您可以替换预配置的库以使用替代库。

示例

将以下内容添加到您的 Settings 以使用 jpegoptim 而不是 jpegtran

MOC:
  ImageOptimizer:
    formats:
      'image/jpeg':
        enabled: true
        library: 'jpegoptim'
        binaryPath: 'jpegoptim-bin/vendor/jpegoptim'
        arguments: "${'--strip-all --max=' + quality + ' ' + (progressive ? '--all-progressive ' : '') + '-o ' + file}"
        parameters:
          progressive: true # whether or not to serve progressive jpgs
          quality: 80 # quality level (1-100)

在此操作中,您必须自行提供必要的库,因为它在上面的安装过程中并未包含。

使用

  • 清除缩略图以生成新的自动优化的缩略图。

./flow media:clearthumbnails

  • 查看系统日志进行调试和错误输出。