Добрый День! Столкнулся с проблемой. Существуют ли способы сохранения качества аватара без потери качества изображения? Проблема заключается в том, что при загрузке аватара хорошего качества, в миниатюре он теряет все свойства своего качества. Приведу пример отображения при загрузки фотографии хорошего качества: Подозреваю что проблема заключается в сжатии, но есть ли варианты отключения этого сжатия при загрузке? Ниже приведу мой код:
function setAvatar(evt, id) {
saveImageToDataStorage("/update-avatar", evt, id, localUser.uid, function() {
// var avatar = document.getElementById("nav_bar_avatar");
// avatar.style.backgroundImage = "url('" + STORAGE_url + "/public/users/" + localUser.uid + ".jpg?cache=" + + (new Date()).getTime() + "')";
let img = new Image;
img.crossOrigin = "Anonymous";
img.onerror = function() {
img.src = "static/assets/foto_placeholder72.svg";
};
img.onload = function() {
let canvas = document.getElementById("nav_bar_avatar");
var scaledCanvas = scaleAndCropImage(img, canvas.width, canvas.height);
canvas.getContext('2d').drawImage(scaledCanvas, 0, 0, canvas.width, canvas.height);
};
img.src = STORAGE_url + "/public/users/" + localUser.uid + ".jpg?cache=" + (new Date()).getTime();
})
}
<td class="itemMenu profile">
<a href="/profile" class="nav_bar_avatar">
<canvas id="nav_bar_avatar" height="28" width="28" style=" -webkit-clip-path: circle(50.0% at 50% 50%); clip-path: circle(50.0% at 50% 50%); height: 100%; width: 100%"></canvas>
</a>
{{if eq .Active "editProfile"}}
<a id="nav_bar_user" href="/profile" class="nav_bar_text current"></a>
{{else}}
<a id="nav_bar_user" href="/profile" class="nav_bar_text"></a>
{{end}}
</td>
Заранее спасибо.
Зачем помещать картинку в канвас для дальнейшего сжатия? Вы думаете, так будет меньше нагрузка? Нет, вы все равно скачиванием с сервера картинку, а на канвас задействуется больше мощности браузера. Почему бы просто не помещать картинку в тег IMG, таким образом как вы описали, и не использовать для этого инструменты, не предназначенные для этого.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть большой json-файл(примерно, 7,5 мегабайт), который подгружается с диска и декодируется примерно 3 секундыЯ захотел это исправить и положить...
Допустим, есть пользователь, который ввел денежные средства на сайтИ есть другой пользователь, который получить эти деньги после выполнения...
Необходимо сравнить текущие время с заданным, если текущие время больше заданного хотя бы больше на 30 минут, то вывести фразуУ меня выводит...