nattreid / image-storage
Image storage for Nette Framework
Installs: 443
Dependents: 4
Suggesters: 1
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/nattreid/image-storage
Requires
- php: >= 7.4
- ext-exif: *
- ext-fileinfo: *
- guzzlehttp/guzzle: ~7.4
- nette/di: ~3.0
- nette/http: ~3.0
Requires (Dev)
- latte/latte: ~2.11
- nette/application: ~3.0
- nette/tester: ~1.7
- tracy/tracy: ~2.9
README
Nastavení v config.neon
extensions: images: NAttreid\ImageStorage\DI\ImageStorageExtension images: assetsPath: '%wwwDir%/../assets' noImage: 'default/default.png' publicDir: 'assets' quality: 85 defaultFlag: 'fit' domain: '//domena/' # zobrazi url obrazku na jine domene timeout: 10
Použití v presenteru
Do hlavního presenteru vložit
class BasePresenter { use \NAttreid\ImageStorage\TraitImagePresenter; }
Ukládání obrázků
/* @var $fileUpload \Nette\Http\FileUpload */ $resource = $storage->createUploadedResource($fileUpload); // nebo z cesty /* @var $location string */ $resource = $storage->createResource($location); // pridame namespace $resource->setNamespace('namespace'); // ulozime $storage->save($resource); // zobrazime url adresu echo $storage->link($result); // $id pro ulozeni $id = $resource->getIdentifier();
Získání obrázku
$resource = $storage->createResource($id);
Přesouvání obrázků
$resource = $storage->createResource($id); $resource->setNamespace('jine/namespace'); $storage->save($resource);
Odstranění obrázku
$storage->delete($id); //nebo vice najednou $ids=[....]; $storage->delete($ids);
Šablony
Zobrazení obrázku
{img 'image.jpg'} <img n:img="'image.jpg', '100x100', 'fill', 80">