Версия: 6.x
burger close
Класс Core

Подробное описание

Класс, отвечающий за отдачу картинок соответсвующего типа Сообщаем ему, папку исходников. папку, в которую будут рендериться уменьшенные фото.

Открытые члены

 __construct ($base, $srcFolder, $dstFolder)
 
 setWatermark ($file, $minWidth=0, $minHeight=0, $posX=self::WM_POSX_CENTER, $posY=self::WM_POSY_MIDDLE, $opacity=100)
 
 disableWatermark ()
 
 setQuality ($n)
 
 toOutput ($imageFileName, $width, $height, $type, $hash)
 
 buildImage ($imageFileName, $width, $height, $type, $urltype=null, $detect_format_by_filename=true)
 
 getOriginalFilename ($origFileName)
 
 putWatermark (File $source, $offset=5)
 
 getImageUrl ($imageFileName, $width, $height, $imgType= 'xy', $absolute=false, $detect_format_by_filename=false)
 
 checkOpenKey ($fname, $width, $height, $type, $openKey)
 
 getFileName ($filename)
 
 removeFile ($origFileName, $excludeOriginal=false)
 
 rotate ($origFileName, $angle=-90, $background= 'FFFFFF')
 

Открытые статические члены

static setDefaultFormats ($format=null)
 
static switchFormat ($format, bool $switch)
 
static isFormatAvailable ($format)
 

Поля данных

const WM_POSX_LEFT = 'left'
 
const WM_POSX_CENTER = 'center'
 
const WM_POSX_RIGHT = 'right'
 
const WM_POSY_TOP = 'top'
 
const WM_POSY_MIDDLE = 'middle'
 
const WM_POSY_BOTTOM = 'bottom'
 
const FORMAT_WEBP = 'webp'
 
 $watermark = false
 
 $srcFolder
 
 $dstFolder
 
 $quality
 

Статические открытые данные

static $allowed_extension = ['png', 'jpg', 'jpeg', 'webp', 'gif']
 

Защищенные члены

 parseOrigFilenameByImageName ($imageFileName)
 
 imageCopyMergeAlpha ($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h, $pct)
 
 generateOpenKey ($fname, $width, $height, $type)
 
 checkFolder ($dstFilename)
 
 getPreviewTypes ()
 

Защищенные данные

 $base
 

Статические защищенные данные

static $current_formats
 
static $_cache = []
 

Конструктор(ы)

__construct (   $base,
  $srcFolder,
  $dstFolder 
)

Методы

buildImage (   $imageFileName,
  $width,
  $height,
  $type,
  $urltype = null,
  $detect_format_by_filename = true 
)

Создает изображение, согласно параметрам

Аргументы
string$imageFileName- имя изображения, которое нужно создать. Должно быть равно оригиналу изображения с оригинальным или двойным расширением.
int$width- ширина
int$height- высота
$type
string$urltype- тип по которому формировать url изображения. Если null, то = $type
bool$detect_format_by_filename
Возвращает
string возвращает относительную ссылку на изображение
Исключения
Exception
checkFolder (   $dstFilename)
protected

Проверяет наличие необходимой директории для файла, в случае отсутствия создает

checkOpenKey (   $fname,
  $width,
  $height,
  $type,
  $openKey 
)

Проверяет соответствие ключа параметрам изображения

Возвращает
bool возвращает true - если ключ соответствует, иначе false
disableWatermark ( )

Отключает установку водяного знака на изображения

generateOpenKey (   $fname,
  $width,
  $height,
  $type 
)
protected

Возвращает ключ для набора параметров изображения

Возвращает
string
getFileName (   $filename)

Возвращает строку до первой точки

Аргументы
string$filename
Возвращает
string
getImageUrl (   $imageFileName,
  $width,
  $height,
  $imgType = 'xy',
  $absolute = false,
  $detect_format_by_filename = false 
)

Возвращает ссылку на изображение

Аргументы
string$imageFileName- имя оригинального файла изображения с оригинальным или двойным расширением. Второе будет означать выходной формат.
int$width- ширина
int$height- высота
string$imgType
bool$absolute- если задано true, то будет возвращен абсолютный путь, иначе относительный
bool$detect_format_by_filenameЕсли true, то формат выходного файла будет определен из расширения $imageFileName. Если false, то исходя из настроек в системе
Возвращает
string
getOriginalFilename (   $origFileName)

Возвращает полный путь к оригиналу изображения

getPreviewTypes ( )
protected

Возвращает все типы уже созданных preview

imageCopyMergeAlpha (   $dst_im,
  $src_im,
  $dst_x,
  $dst_y,
  $src_x,
  $src_y,
  $src_w,
  $src_h,
  $pct 
)
protected

Исправленная функция imagecopymerge с поддержкой альфаканала у watermark

static isFormatAvailable (   $format)
static

Возвращает доступность формата

Аргументы
$format
Возвращает
bool
parseOrigFilenameByImageName (   $imageFileName)
protected

Возвращает имя файла с первым расширением, в случае, если их передано два Например: c/h8bejoo1c74vtr5.jpg или c/h8bejoo1c74vtr5.jpg.webp

Аргументы
string$imageFileName
Возвращает
string
Исключения
Exception
putWatermark ( File  $source,
  $offset = 5 
)

Устанавливает водяной знак на изображение

Аргументы
CImg_File$source
mixed$offsetотступ от краев
removeFile (   $origFileName,
  $excludeOriginal = false 
)

Удаляет оригинал изображения и все имеющиеся превью

Аргументы
string$originalName
boolean$excludeOriginal- если true, то не удалять оригинал
rotate (   $origFileName,
  $angle = -90,
  $background = 'FFFFFF' 
)

Переворачивает изображение на заданное количество градусов

Аргументы
mixed$origFileNameимя оригинального файла
mixed$angleугол поворота
mixed$backgroundфон заливки
static setDefaultFormats (   $format = null)
static

Если не передан конкретный формат, то устанавливает значения доступных форматов по умолчанию, иначе устанавливает значение по умолчанию для переданного формата

Аргументы
null$format
setQuality (   $n)

Устанавливает качество итогового JPG изображения

Аргументы
integer$nот 0 до 100
setWatermark (   $file,
  $minWidth = 0,
  $minHeight = 0,
  $posX = self::WM_POSX_CENTER,
  $posY = self::WM_POSY_MIDDLE,
  $opacity = 100 
)

Устанавливать водяной знак на создаваемые изображения

Аргументы
string$fileполный путь к PNG файлу водяного знака
integer$minWidthминимальная ширина изображения, на которое будет наложен водяной знак
integer$minHeightминимальная высота изображения, на которое будет наложен водяной знак
string$posXположение водяного знака по горизонтали (см. константы WM_POSX_...)
string$posYположение водяного знака по вертикали (см. константы WM_POSY_...)
static switchFormat (   $format,
bool  $switch 
)
static

Изменяет доступность формата

Аргументы
$format
bool | null$switch
Возвращает
bool
toOutput (   $imageFileName,
  $width,
  $height,
  $type,
  $hash 
)

Создает(если нужно) и Отправляет файл в output

Аргументы
string$imageFileName- имя оригинального файла с оригинальным или двойным расширением (что означает выходной формат изображения) c/h8bejoo1c74vtr5.jpg или c/h8bejoo1c74vtr5.jpg.webp
int$width- ширина
int$height- высота
string("xy"|"axy"|"cxy") $type - тип
string$hash- ключ

Поля

$_cache = []
staticprotected
$allowed_extension = ['png', 'jpg', 'jpeg', 'webp', 'gif']
static
$base
protected
$current_formats
staticprotected
Инициализатор
= [
self::FORMAT_WEBP => true
]
$dstFolder
$quality
$srcFolder
$watermark = false
const FORMAT_WEBP = 'webp'
const WM_POSX_CENTER = 'center'
const WM_POSX_LEFT = 'left'
const WM_POSX_RIGHT = 'right'
const WM_POSY_BOTTOM = 'bottom'
const WM_POSY_MIDDLE = 'middle'
const WM_POSY_TOP = 'top'