Масштабування зображень в php

Відео: Зменшення зображень за допомогою PHP

Масштабування зображень в PHP

У попередній статті я розповів, як обрізати зображення на PHP. У цій же статті я розповім, як масштабувати зображення на PHP, тобто або стиснути, або розтягнути.




Давайте відразу наведу код зменшити масштаб відео на PHP:

Відео: [PHP] Зображення (Урок 30.2)

lt ;?php
/ *
$ W_o і h_o - ширина і висота вихідного зображення
* /

function resize($ image, $ w_o =false, $ h_o =false){
if(($ w_o lt;0)||($ h_o lt;0)){
echo
"Некоректні вхідні параметри"-
returnfalse-
}
list
($ w_i, $ h_i, $ type)= getimagesize($ image) -// Отримуємо розміри і тип зображення (число)
$ types
= array("","Gif","Jpeg","Png") -// Масив з типами зображень
$ ext
= $ types[$ type] -// Знаючи "числовий" тип зображення, дізнаємося назву типу
if($ ext){
$ func
=`Imagecreatefrom`.$ ext-// Отримуємо назва функції, що відповідає типу, для створення зображення
$ img_i
= $ func($ image) -// Створюємо дескриптор для роботи з вихідним зображенням
}else{
echo
`Некоректне зображення`-// Виводимо помилку, якщо формат зображення неприпустимий
returnfalse-
}
/ * Якщо вказати тільки 1 параметр, то другий підлаштується пропорційно * /
if(!$ h_o) $ h_o = $ w_o /($ w_i / $ h_i) -
if(!$ w_o) $ w_o = $ h_o /($ h_i / $ w_i) -
$ img_o
= imagecreatetruecolor($ w_o, $ h_o) -// Створюємо дескриптор для вихідного зображення
imagecopyresampled
($ img_o, $ img_i,0,0,0,0, $ w_o, $ h_o, $ w_i, $ h_i) -// Переносимо зображення з вихідного в вихідний, масштабуючи його
$ func
=`Image`.$ ext-// Отримуємо функція для збереження результату
return $ func($ img_o, $ image) -// Зберігаємо зображення в той же файл, що і вихідне, повертаючи результат цієї операції
}
/ * Викликаємо функцію з метою зменшити зображення до ширини в 100 пікселів, а висоту зменшивши пропорційно, щоб не спотворювати зображення * /
resize
("Image.jpg",100) -// Викликаємо функцію
?gt;



Ось така корисна і проста функція легко дозволяє стискати і розтягувати зображення на PHP, при цьому при необхідності і зберігати пропорції.

Поділися в соціальних мережах:

Схожі
Оптимізація зображень linuxОптимізація зображень linux
Що таке css спрайт?Що таке css спрайт?
Як замість маркера списку поставити зображення через cssЯк замість маркера списку поставити зображення через css
Створення графіків на phpСтворення графіків на php
Як я оптимізує картинки для блогуЯк я оптимізує картинки для блогу
Як зробити смайли в коментаряхЯк зробити смайли в коментарях
Кросбраузерності події.Кросбраузерності події.
Обрізка зображень в phpОбрізка зображень в php
Сервіс по роботі з зображеннями з потужним api.Сервіс по роботі з зображеннями з потужним api.
Чи варто зберігати зображення в бдЧи варто зберігати зображення в бд
» » Масштабування зображень в php