Показать сообщение отдельно
  #7 (permalink)  
Старый 28.06.2020, 20:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Katy93
То как это можно сделать?
Да сделать то проще простого, это можно сделать и на клиенте. Но тут есть маленькое но. На клиенте canvas использует не самый из хороших методов интерполяции в угоду быстродействия. В чем суть вопроса, можете почитать, например, тут:

https://www.cambridgeincolour.com/ru...erpolation.htm
https://overcoder.net/q/9369/html5-c...ачества

Но если в вашем проекте это не критично, то можно и на клиенте уменьшить, контролируя процесс визуально. На сервере даже стандартное входящее в РНР расширение GD имеет гораздо больше выбора в методах. А уменьшить изображение в этом расширение в случае РНР версии начиная с 5.5, можно простой функцией imagescale(). До этого можно выбрать и метод интерполяции. Почитайте о функциях GD. Ранее было проблемой использовать ImageMagick, еще одно богатейшее средство для работы с графикой, теперь на многих хостах оно имеется и предлагается, а в РНР добавлено как расширение. Правда многие функции его пока экспериментальные или не документированы.
Ответить с цитированием