Категории

Java-script уменьшения картинки по кнопке

24.01.2026 | коды из категории: Создание сайтов

Уменьшить изображение







Это мини-инструмент прямо в браузере, который позволяет уменьшить размер изображения без программ и без загрузки на сервер.
Ты выбираешь картинку → указываешь, на сколько процентов её уменьшить (например, до 50% от оригинала) → нажимаешь кнопку → скачиваешь готовый файл.
Всё происходит локально: твоё изображение никогда не уходит в интернет — оно обрабатывается только в памяти браузера. Это быстро, безопасно и удобно для блога.
В админку не лезит картинка, быстро уменьшить без программ.

<div style="max-width: 600px; margin: 20px auto; font-family: sans-serif;">
  <h3>Уменьшить изображение</h3>
  <input type="file" id="imageUpload" accept="image/*" />
  <br><br>
  <label>Уменьшить на: 
    <select id="scalePercent">
      <option value="75">25%</option>
      <option value="50" selected>50%</option>
      <option value="25">75%</option>
      <option value="10">90%</option>
    </select>
  </label>
  <br><br>
  <button onclick="resizeImage()">Уменьшить и скачать</button>
  <br><br>
  <canvas id="previewCanvas" style="display:none;"></canvas>
</div>

<script>
function resizeImage() {
  const fileInput = document.getElementById('imageUpload');
  const file = fileInput.files[0];
  if (!file) {
    alert('Сначала выберите изображение!');
    return;
  }

  const percent = parseInt(document.getElementById('scalePercent').value);
  const scale = percent / 100;

  const img = new Image();
  img.src = URL.createObjectURL(file);

  img.onload = function () {
    const canvas = document.getElementById('previewCanvas');
    const ctx = canvas.getContext('2d');

    const newWidth = img.width * scale;
    const newHeight = img.height * scale;

    canvas.width = newWidth;
    canvas.height = newHeight;

    ctx.drawImage(img, 0, 0, newWidth, newHeight);

    // Скачиваем как JPEG с качеством 0.85 (можно изменить)
    const link = document.createElement('a');
    link.download = 'resized-image.jpg';
    link.href = canvas.toDataURL('image/jpeg', 0.85);
    link.click();

    URL.revokeObjectURL(img.src); // освобождаем память
  };
}
</script>
Теги: #скрипт #html #script #уменьшение_картинки

Комментарии

Пока нет комментариев. Будьте первым!

Оставить комментарий

← Назад к списку

Посетителей сегодня: 0
о блоге

© Digital Specialist | Не являемся сотрудниками Google, Яндекса и NASA