Загрузка изображений, resize и т.д

194 views
Skip to first unread message

Капслок

unread,
May 12, 2012, 3:27:17 AM5/12/12
to cake-php-ru
Какими стандартными средствами можно изменить размер изображения и
заодно проверить его что это действительно изображение?
Если стандартных средств нету, тогда подскажите как грамотно
подключить класс для работы с изображениями?
например вот этот: http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/

Или сожет быть свое что посоветуете?

Капслок

unread,
May 12, 2012, 6:22:10 AM5/12/12
to cake-...@googlegroups.com
Использую cakephp2.0
Поступил следующим образом:
В папку Vendor засунул этот класс, в контроллере подключил его вот так  App::uses('SimpleImage''Vendor'); 
Далее в месте где идет обработка изображения воспользовался функцией из этого класса. Все прекрасно работает!

суббота, 12 мая 2012 г., 11:27:17 UTC+4 пользователь Капслок написал:

Mister-Fil

unread,
May 12, 2012, 6:41:06 AM5/12/12
to cake-...@googlegroups.com
Я остановился на этом компоненте  https://github.com/raitisg/CakePHP-ImageTool-Component 
Если что непонятно, то помогу


суббота, 12 мая 2012 г., 13:27:17 UTC+6 пользователь Капслок написал:

Антон Великолепный

unread,
May 12, 2012, 11:54:50 AM5/12/12
to cake-...@googlegroups.com
Спасибо за компонент, подключил все работает! 

12 мая 2012 г., 14:41 пользователь Mister-Fil <pec...@gmail.com> написал:

--
Вы получили это сообщение, поскольку подписаны на группу cake-php-ru.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/cake-php-ru/-/5nwBVdKBxM8J.

Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу cake-...@googlegroups.com.
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу cake-php-ru...@googlegroups.com.
О дополнительных функциях можно узнать в группе по адресу http://groups.google.com/group/cake-php-ru?hl=ru.

Капслок

unread,
Jun 6, 2012, 12:29:12 PM6/6/12
to cake-...@googlegroups.com
Подскажите пожалуйста как мне налепить ватермарку, если у меня изображение уже обработаное

суббота, 12 мая 2012 г., 14:41:06 UTC+4 пользователь Mister-Fil написал:

Mister-Fil

unread,
Jun 6, 2012, 12:44:06 PM6/6/12
to cake-...@googlegroups.com
какие условия для него?
Можно java сделать - легко менять в любой момент, но при сохранение картинки на компьютер, его на ней не будет
Можно PHP - потом его не поменять, либо накладывать налету(при условии, что файлы отдает apache)

среда, 6 июня 2012 г., 22:29:12 UTC+6 пользователь Капслок написал:

Антон Великолепный

unread,
Jun 6, 2012, 1:43:43 PM6/6/12
to cake-...@googlegroups.com
Сначала я обрабатываю изображение на сервере 
  $status = $this->ImageTool->resize(array(
                    'input' => IMAGES . $file_name,
                    'output' => IMAGES . 'photo/' . $u_name . '.jpg',
                    'width' => 600)).............

После чего, отдельной командой, скажем при нажатии на кнопку "Установить ватермарку" выполняется команда наложения изображения на существующее.Это выполняется тем же самым кодом,$this->ImageTool->resize(array(... , в конце которого добавляется опция ватермарки, но меня смущает то, что выполняется опять resize. 


6 июня 2012 г., 20:44 пользователь Mister-Fil <pec...@gmail.com> написал:

--
Вы получили это сообщение, поскольку подписаны на группу cake-php-ru.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/cake-php-ru/-/bciR9tNFsu0J.

Mister-Fil

unread,
Jun 6, 2012, 11:39:54 PM6/6/12
to cake-...@googlegroups.com
необходимо воспользоваться другой функцией 

$this->ImageTool->watermark($options = array())

 Options:
'input' Input file (path or gd resource)
'output' Output path. If not specified, gd resource is returned
'watermark' Watermark file (path or gd resource)
'quality' Output image quality (JPG only). Value from 0 to 100
'compression' Output image compression (PNG only). Value from 0 to 9
'chmod' What permissions should be applied to destination image
'scale' If true, watermark will be scaled fullsize ('position' and 'repeat' won't be taken into account)
'strech' If true and scale also set to true, strech watermark to cover whole image
'repeat' Should watermark be repeated? This is ignored if 'scale' is set to true or 'position' is custom (array)
'position' Watermark position. Possible values: 'top-left', 'top-right', 'bottom-right', 'bottom-left', 'center' or array(x, y)
'opacity' Watermark image's opacity (0-100). Default = 100
'afterCallbacks' Functions to be executed after this one



среда, 6 июня 2012 г., 23:43:43 UTC+6 пользователь Капслок написал:

Антон Великолепный

unread,
Jun 7, 2012, 7:38:59 AM6/7/12
to cake-...@googlegroups.com
Спасибо все получилось)

7 июня 2012 г., 7:39 пользователь Mister-Fil <pec...@gmail.com> написал:

--
Вы получили это сообщение, поскольку подписаны на группу cake-php-ru.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/cake-php-ru/-/JKpRhH4ZQvMJ.
Reply all
Reply to author
Forward
0 new messages