geniv/ nette-thumbnail
Nette 框架的缩略图扩展
v1.2
2020-06-22 21:34 UTC
Requires
- php: >=7.0
- latte/latte: >=2.8
- nette/caching: >=3.0
- nette/di: >=3.0
- nette/php-generator: >=3.0
- nette/utils: >=3.0
README
安装
$ composer require geniv/nette-thumbnail
或
"geniv/nette-thumbnail": "^1.2"
require
"php": ">=7.0", "nette/caching": ">=3.0", "nette/di": ">=3.0", "nette/php-generator": ">=3.0", "nette/utils": ">=3.0", "latte/latte": ">=2.8"
包含在应用程序中
默认调整大小标志:SHRINK_ONLY
,通过:https://doc.nette.org/cs/2.4/images
质量
通过:https://api.nette.org/2.4/source-Utils.Image.php.html#512-549
- JPEG - 0-100;默认:85
- PNG - 0-9;默认:9
- GIF - 无
- WEBP - 0-100;默认:80
lazyLoad: true
仅适用于 <img src="...">
,因为生成一张图片后 PHP 会终止。必须定义 waitImage
!
neon 配置
# thumbnail thumbnail: dir: %wwwDir%/../ thumbPath: %wwwDir%/files/image/thumbnail/ thumbUrl: https://example.com # or use %baseUrl% from parameters section noImage: www/images/no-image.svg # waitImage: www/images/wait-image.gif # lazyLoad: false # defaultFlag: Nette\Utils\Image::SHRINK_ONLY # cache: false template: projectBlock: path: www/images/ width: 250 height: 150 flags: [FILL,SHRINK_ONLY] quality: 75
neon 配置扩展
extensions: thumbnail: Thumbnail\Bridges\Nette\Extension
用法
{* path, image, [width], [height], [image flag], [quality] *} or {* template, image *} {* path/to/image.png *} {thumb 'www/images/', '1920x1080.png', 200, 150, ['FIT'], 75} {thumb 'www/images/', '1920x1080.png', 200, 150, [], 6} {thumb 'www/images/', '1920x1080.png', 200, 150, ['FILL']} {thumb 'www/images/', '1920x1080.png', 200, 150} {thumb 'www/images/', '1920x1080.png', '50%', '75%'} {thumb 'www/images/', '1920x1080.png', 200} {thumb projectBlock, '1920x1080.png'} {thumb projectBlock, $item['image']} {thumb $presenter->context->parameters['gallery']['pathToImage'], $item['image'], 120, 121} {* combine usage *} <img src="{thumb projectBlock, $item['image']}"> {* accept modifier dataStream for base64 *} {thumb projectBlock, $item['image']|dataStream} {* example output: *} {* output is not contains absolute url! eg: *} {* www/images/1920x1080-131745-2019-01-28-00-37-50_p..SwwwSfilesSfileSwh64f1qmt1548632270.jpg *}
演示者
Thumbnail::setDefaultImageFlag(int $flag) Thumbnail::setNoImage(string $path) Thumbnail::setWaitImage(string $path) Thumbnail::setLazyLoad(bool $state) Thumbnail::setCache(bool $state) Thumbnail::cleanThumbnail(): array Thumbnail::synchronizeThumbnail([__DIR__.'/../../www/images/']) : array Thumbnail::getUnusedFiles([__DIR__.'/../../www/images/']) : array Thumbnail::isSrcPathExists(string $path, string $file = null): bool Thumbnail::getSrcPath(string $path, string $file = null, string $width = null, string $height = null, array $flags = [], int $quality = null): string