Масштабування зображень в 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, при цьому при необхідності і зберігати пропорції.
Поділися в соціальних мережах:
Схожі
- Resize me!
- Як замість маркера списку поставити зображення через css
- Як я оптимізує картинки для блогу
- Як зробити попередній перегляд зображень на jаvascript.
- Як зробити смайли в коментарях
- Що таке css спрайт?
- Як зробити зображення адаптивними?
- Завантаження зображень з файлу в php
- Чи варто зберігати зображення в бд
- Заливка текстурами в php
- Png в ie6
- Обрізка зображень в php
- Графічний лічильник на php
- Сервіс по роботі з зображеннями з потужним api.
- Стиснення jpeg в linux
- Оптимізація зображень linux
- Висновок всіх картинок з папки на php
- Створення графіків на php
- Об`єкт image в jаvascript
- Кросбраузерності події.
- Створення зображень в php