Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097

Как сжать картинки на php?

17.07.2018, 20:44. Показов 2817. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть много картинок -jpeg/png.Задача уменьшит их вес на 15-20% без видимой на глаз потери качества.Подскажите,скрипт ибо jpg можно пакетной обработкой утилитой FastStone Image Viewer ужать,а вот png она не ужимает,а только увеличивает их вес.У меня windows 10 x32 bit.Онлайн сервисы это долго по 29 штук скачивай туда,потом архив назад,потом распаковывай его с заменой,потом удаляй архив.Под весом я имею виду,что ширина и высота остается без изменений. Меняется только мегабайты на килобайты.

Добавлено через 11 минут
это только для jpeg и правильно ли,я нагуглил,а будет ли для jpg,а за png ума не приложу,как.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$lines = file('111.txt');
 
foreach ($lines as  $line) {
   
//$uploadfile='im/20130623134413_2266.jpg';
//$filename11 = $uploadfile;
$filename11=$line;
list($width, $height) = getimagesize($filename11);
$new_width = 1024;//она должна браться с картинки
$new_height = 724;//она должна браться с картинки
 
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename11);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($img,$filename,$quality);
}
Добавлено через 45 секунд
Я имею ввиду под сжатием их оптимизацию.

Добавлено через 16 минут
Есть еще такая библиотека,я не пойму как ее установить

Добавлено через 28 минут
Нашел класс от Tinypng
Не пойму куда прописать API_key

Добавлено через 10 минут
Я так понял,что вот так
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  <?php
    // Require tinypng.php
    require_once("tinypng.php");
    
    // Create a new instance of TinyPNG
    $tinypng = new TinyPNG("API_KEY_GOES_HERE");
    
    // Compress a single image
    $singleImage = $tinypng -> compress("input.png", "output.png");
 
    // Compress multiple images
    $images = array(
      "input.png"   => "output.png",
      "input-2.png" => "output2.png"
    );
    $multipleImages = $tinypng -> compress($images);
    ?>
API_KEY_GOES_HERE это сюда вписать ключ на оптимизацию 500 штук?А,что лучше singleImage или multiple images?

PHP
1
2
3
4
5
6
7
8
9
10
$lines = file('111.txt');
 
foreach ($lines as  $line) {
   //если я хочу перезаписывать оригинал методом single image
    // Compress a single image
    $singleImage = $tinypng -> compress($line, $line);
echo '<pre>';
echo $line;
echo '</pre>';
}
А для multiple images,как применить$line ?

Добавлено через 3 минуты
так же непонятно,как выводить замер оптимизаций в минуту по к-ву картинок в браузер

Добавлено через 24 минуты
что-то не оптимизирует,размер,как был так и остался не правильно работает
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.07.2018, 20:44
Ответы с готовыми решениями:

Сжать размер картинки до определенного размера
Допустим есть файл формата jpg, его размер 700 кб, как можно сжать до &lt; 400 кб с минимальными потерями качества?

Сжать картинки без потери качества JPG и PNG
Перебрал множество программ для сжатия картинок JPG и PNG так и не нашел что нужно, разные ограничения стоят, то делает чересчур медленно,...

Как организовать загрузку созданой PHP картинки
Доброго времени суток при помощи PHP была создана картинка вот код &lt;?php header('Content-Type: image/jpeg'); $img =...

2
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
17.07.2018, 20:50  [ТС]
мой скрипт в одном каталоге с tinypng.php и 111.txt

в левой колонке размер файлов после оптимизации на сайте tinypng,в правой после работы скрипта(не ужимает)
0
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
17.07.2018, 20:53  [ТС]
пробовал с true и без него
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.07.2018, 20:53
Помогаю со студенческими работами здесь

Как сделать белы фон создаваемой картинки на PHP?
Как сделать белый фон создаваемой картинки на PHP? По умолчанию фон создаётся чёрный $im = imagecreatetruecolor(100, 100); ...

Как сделать так, чтобы php скрипт поочередно обрабатывал картинки поступившие после разархивации в папку?
Здравствуйте, программисты! Не понимаю, как сделать так, чтобы скрипт, который обрабатывает картинки, мог поочередно брать картинки из...

Php картинки
&lt;? $size = getimagesize(&quot;http://skins.ensemplix.ru/malik89303.png&quot;); $s= $size.'*'.$size; if($s=='64*32'){ $src =...

Как сжать видео?
Подскажите пожалуйста, какой прогой можно сжать видео, чтобы записать больше информации на DVD носитель? Заранее признателен!

Как сжать скриншот?
Здравствуйте. У меня есть код, который делает скриншоты: var ScreenTC : TCanvas; ScreenBM : TBitMap; begin ScreenTC :=...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru