ramzes, это тут его не видно, он постоянно следит за комитами и даже пулреквесты пилит
ramzes, это тут его не видно, он постоянно следит за комитами и даже пулреквесты пилит
# Koenig (22.08.2016 / 20:19)да как бы я не о невидности
ramzes, это тут его не видно, он постоянно следит за комитами и даже пулреквесты пилит
Для обработки изображений в последнем своем проекте использовал данный пакет.
В живую это выглядело так:
$this->fileTable->edit($file, function(SimpleImage $editor) use($data){
$editor->crop(
(int) $data['up_photo']['x'],
(int) $data['up_photo']['y'],
((int) $data['up_photo']['x'] + (int) $data['up_photo']['width']),
((int) $data['up_photo']['y'] + (int) $data['up_photo']['height'])
);
$editor->resize(1080, 1200);
return [80, Mimetype::IMG_JPG];
}); ramzes, не стоит заимствовать интерфейс , покажу кодом
$handle = new upload($_FILES['image']);
if ($handle->uploaded) {
// Обрабатываем фото
$handle->file_new_name_body = $cid;
$handle->allowed = array(
'image/jpeg',
'image/gif',
'image/png'
);
$handle->file_max_size = 1024 * $set['flsz'];
$handle->file_overwrite = true;
$handle->image_x = $handle->image_src_x;
$handle->image_y = $handle->image_src_y;
$handle->image_watermark = '../files/library/images/watermark.png';
$handle->image_watermark_x = 10;
$handle->image_watermark_y = 10;
$handle->image_watermark_position = 'LB';
$handle->image_watermark_no_zoom_in = true;
$handle->image_watermark_no_zoom_out = false;;
$handle->image_convert = 'png';
$handle->process('../files/library/images/orig/');
$err_image = $handle->error;
$handle->file_new_name_body = $cid;
$handle->file_overwrite = true;
if ($handle->image_src_y > 240) {
$handle->image_resize = true;
$handle->image_x = 240;
$handle->image_y = $handle->image_src_y * (240 / $handle->image_src_x);
} else {
$handle->image_x = $handle->image_src_x;
$handle->image_y = $handle->image_src_y;
}
$handle->image_watermark = '../files/library/images/watermark.png';
$handle->image_watermark_x = 10;
$handle->image_watermark_y = 10;
$handle->image_watermark_position = 'LB';
$handle->image_watermark_no_zoom_in = true;
$handle->image_watermark_no_zoom_out = false;
$handle->image_convert = 'png';
$handle->process('../files/library/images/big/');
$err_image = $handle->error;
$handle->file_new_name_body = $cid;
$handle->file_overwrite = true;
$handle->image_resize = true;
$handle->image_x = 32;
$handle->image_y = 32;
$handle->image_convert = 'png';
$handle->process('../files/library/images/small/');
if ($err_image) {
echo functions::display_error($lng_gal['error_uploading_photo'] . '<br /><a href="?act=addnew&id=' . $id . '">' . $lng['repeat'] . '</a>');
}
$handle->clean();
}// выборка
class Images extends Kimage {
public function add($file) {
$original = $this->tmp($file);
$name = $this->uniqid();
$original->save($this->dir . self:
S . 'orig' . self:
S . $name . '.png');
$original->reWidth(480)
->save($this->dir . self:
S . 'big' . self:
S . $name . '.png');
$original->reWidth(64)
->save($this->dir . self:
S . 'small' . self:
S . $name . '.png');
}
}Delphinum, кстати давно на этот класс положил глаз, но функциональность избыточна
# ramzes (22.08.2016 / 19:57)Это ООП
https://github.com/brandonsava ... e.php
Это файлосрачь, а не модульное программирование
Koenig, дело не в том что у тебя обращение короче, дело в том что предется переписывпть кучу кода в джоне.
проще некий драйвер сделать который будет транслировать логику обращений в новые классы
# reaper (22.08.2016 / 20:44)это херь
Это ООП
Вообще некоторые разумные мысли в этом топике есть, но, вы какую-то херню несёте тут.
Что касается проблемы "куча файлов" vs "куча строк", то как уже сказали, истина где-то посер
ramzes, ну я пройду в те пять мест вызова старого класса, их примерно 5 , библиотека, альбомы, аватары, еще где то, удаляю 30 строк, добавляю одну
тут не такой мегаогромный проект, и пример дал, там каша, кучу свойств определяется
ramzes, Ты несёшь какую-то херню и пытаешься сэкономить на спичках. Попробуй немного абстрагироваться и понять самостоятельно, причём здесь ООП, шаблоны проектирования, вот это вот всё.