/** * @param Utils\Image|string $sourceFile * @param string $name * @param string $resolution * @param int $method * @return ImagePath */ public function saveFile($sourceFile, $name, $resolution, $method) { $filename = $this->path->getFilesystem($name, $resolution, $method); Utils\FileSystem::createDir(dirname($filename)); if ($sourceFile instanceof Utils\Image) { $resolutionArray = explode('x', $resolution); $sourceFile->resize($resolutionArray[0], $resolutionArray[1], (int) $method)->save($filename); } elseif (!$this->download->save($sourceFile, $filename)) { throw new ImageManager\RemoteFileDoesNotExistsException($sourceFile); } return new ImagePath($this->getPathUrl($name, $resolution, $method), $filename); }
/** * @param Utils\Image $image * @param string $path * @param string $extension * @return Image */ public function saveImage(Utils\Image $image, $path, $extension) { do { $relativePath = self::addSlashPath($path) . md5(microtime()) . '.' . strtolower($extension); $filename = $this->path->getSourceDir($relativePath); } while (is_file($filename)); if ($this->maxSize) { $image->resize($this->maxSize['width'], $this->maxSize['height'], Utils\Image::SHRINK_ONLY); } Utils\FileSystem::createDir(dirname($filename)); $image->save($filename); return new Image($this->path->getSourceDir(''), $relativePath); }
/** * @param Entities\Person $person * @param Nette\Utils\Image $image * @param string $source Zdroj obrazku (napr. Flick, atd.) * @return boolean */ public function setPersonAvatar($person, $image, $source = NULL) { //odstranit puvodni obr vcetne nahledu $this->deletePersonAvatar($person); //vytvorit nahled a ulozit novy obr $imageName = $person->id . '_' . $person->getWebalizeName() . '.jpg'; $thumbnail = 'avatar' . '_' . $imageName; $resImg = $image->save($this->wwwDirUser . $imageName); if (!$resImg) { return FALSE; } if (empty($source)) { $source = NULL; } $myImage = new Entities\Image($imageName, $source); $myImage->thumbnail = $thumbnail; $person->setAvatar($myImage); $image->resize(100, NULL, \Nette\Utils\Image::SHRINK_ONLY); $resImg2 = $image->save($this->wwwDirUser . $thumbnail, 50); return $resImg && $resImg2; }
private function resizeImage(Image $image, $width, $height = '', $flag = Image::FIT) { $image->resize($width, $height, $flag); return $image; }
/** * Resizes the given image to the given dimensions using given flags. * * @param Image $image The image to resize * @param Request $request The image request * @return Image The image thumbnail */ private function resize(Image $image, Request $request) { if ($request->getDimensions() === Request::ORIGINAL) { return $image; } list($width, $height) = $this->processDimensions($request->getDimensions()); return $image->resize($width, $height, $request->getFlags()); }
/** * * @param \Nette\Utils\Image $image * @param [] $dims */ public function thumbResize($image, $dim) { $thumbFileName = $this->thumbFilename($dim); $d = explode("x", $dim); $image->resize($d[0], $d[1])->sharpen()->save(self::IMAGE_DIR . self::THUMB_DIR . $thumbFileName); //echo $fileName; exit; }
/** * @param int $width * @param int $height */ private static function resizeImageProportionally($width, $height) { static::$image->resize($width, $height, Image::FIT); }