brabijan / images
Nette 框架的图像存储
v3.0.0
2018-06-02 16:46 UTC
Requires
- latte/latte: ~2.4
- nette/di: ~2.4
- nette/finder: ~2.4
- nette/http: ~2.4
- nette/utils: ~2.4
This package is not auto-updated.
Last update: 2024-09-15 21:16:39 UTC
README
这是一个简单的 Nette 框架图像存储
安装
安装 brabijan/images 的最佳方式是使用 Composer
$ composer require brabijan/images:@dev
然后你需要在 config.neon
中注册扩展。
extensions: - Brabijan\Images\DI\ImagesExtension
包包含一个特质,你需要在想要使用图像存储的类中使用它。这仅适用于 PHP 5.4+,对于旧版本,你可以简单地将特质内容复制并粘贴到想要使用的类中。
<?php class BasePresenter extends Nette\Application\UI\Presenter { use Brabijan\Images\TImagePipe; }
使用方法
保存图像
/** @var Brabijan\Images\ImageStorage $imageStorage */ $imageStorage->upload($fileUpload); // saves to .../assetsDir/original/filename.jpg $imageStorage->setNamespace("products")->upload($fileUpload); // saves to .../assetsDir/products/original/filename.jpg
在 Latte 中使用
<a href="{img products/filename.jpg}"><img n:img="filename.jpg, 200x200, fill"></a>
输出
<a href="/assetsDir/products/original/filename.jpg"><img src="/assetsDir/200x200_4/filename.jpg"></a>
在 Texy! 中使用
首先,你需要在 Texy! 中注册宏。
$texy = new Texy; $this->registerTexyMacros($texy);
现在你就可以使用了。宏会扩展 Texy! 中的原生图像宏。以下是语法。
[* products/filename.jpg, 200x200, fill *]
如果图像存储中找不到文件,宏会尝试在文档根目录中搜索文件。当然,你可以添加标题或浮动图像,就像你在纯 Texy! 中所知道的那样。
调整大小标志
对于调整大小(第三个参数),你可以使用以下关键词 - fit
、fill
、exact
、stretch
、shrink_only
。详细信息请参阅上述 这些常量 的注释。