В каталоге с пользовательскими картинками: /static/pics находятся папки:
/orig- для хранения оригиналов/crop- для хранения картинок, обрезанных до определенных размеров/scale- для хранения картинок, вписанных в рамку определенного размера (они требуются, когда важно показать все картинку в ограниченной области, чтобы ничего не было обрезано)
В каждой из этих папок - одинаковая иерархия: /AB/CD/ABCDXXXXXXX…
AB- первые два символа из названия файлаCD- вторые два символа из названия файла
В папке /orig - названия файла имеют вид: <MD5>.jpg
В папках /crop и /scale - названия файлов могут иметь вид:
<MD5>_<WIDTH>_<HEIGHT>.jpg- картинка нужного размера без водяного знака<MD5>_<WIDTH>_<HEIGHT>_stamp.jpg- картинка нужного размера с водяным знаком
<?php
require_once 'scripts/classes/Config.php';
require_once Config::PATH_SCRIPTS_CLASSES . '/Image/Image.php';
$config = new Config();
$image = new Image_Image($config);
// Uploading origin image from remote resource
$remoteSource = 'https://www.google.ru/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png';
$newFileName = md5($remoteSource);
$image->uploadFromRemoteResource($remoteSource, $newFileName);
// Uploading origin image from POST
$fileTmpName = 'jdKGirhJ.jpg';
$newFileName = md5($fileTmpName);
$image->uploadFromPost($fileTmpName, $newFileName);
// Getting of path of image cropped by sizes, without a watermark
$imagePath = $image->getImagePath($pictureId, $width, $height);
$imagePath = $image->getImagePath($pictureId, $width, $height, 'crop');
$imagePath = $image->getImagePath($pictureId, $width, $height, 'crop', false);
// Getting of path of image scaled by sizes, without a watermark
$imagePath = $image->getImagePath($pictureId, $width, $height, 'scale');
$imagePath = $image->getImagePath($pictureId, $width, $height, 'scale', false);
// Getting of path of image cropped or scaled by sizes, with a watermark
$imagePath = $image->getImagePath($pictureId, $width, $height, 'crop', true); // image cropped
$imagePath = $image->getImagePath($pictureId, $width, $height, 'scale', true); // image scaled