stelluna-image-converter

MIT Lisansı Zorunlu bağımlılık yok Build adımı yok ~5 KB

stelluna.io/tr/gorsel-donustur aracının arkasındaki gerçek dönüştürme koduyla birebir aynısı — framework'ten bağımsız, küçük bir kütüphaneye ayrıştırılmış hali. JPG, PNG, WEBP, AVIF ve HEIC arasında tamamen ziyaretçinin tarayıcısında dönüştürür, hiçbir şey hiçbir yere yüklenmez. Kendi sitene ya da uygulamana ücretsiz ekle.

.zip indir index.js'i görüntüle Canlı örnek

Kurulum

npm gerekmez — yukarıdaki index.js'i indirip doğrudan import et:

<script type="module">
  import { convertImage } from "./index.js";
</script>

Kullanım

import { convertImage, validateFile, formatBytes } from "./index.js";

const file = document.querySelector('input[type="file"]').files[0];

const error = validateFile(file); // null, "file-too-large", ya da "unsupported-format"
if (!error) {
  const { blob, width, height } = await convertImage(file, "webp"); // 'jpeg' | 'png' | 'webp' | 'avif'
  console.log(`Converted to ${formatBytes(blob.size)}, ${width}x${height}`);

  const a = document.createElement("a");
  a.href = URL.createObjectURL(blob);
  a.download = "converted.webp";
  a.click();
}

HEIC/HEIF girdisi

Tarayıcılar HEIC'i doğal olarak açamaz, bu yüzden bir HEIC/HEIF dosyasını dönüştürmek isteğe bağlı heic2any bağımlılığını gerektirir (MIT lisanslı). Hiç HEIC dosyası vermeyeceksen kurmana gerek yok — sadece bir tane geldiğinde dinamik olarak import edilir:

npm install heic2any

API

ExportİmzaAçıklama
convertImage(file, targetFormat) => Promise<{blob, width, height}>Bir File/Blob'u hedef formata dönüştürür
validateFile(file, opts?) => string | nullHata kodu döner, geçerliyse null
canEncode(format) => Promise<boolean>Mevcut tarayıcının o formatı kodlayıp kodlayamadığı
isHeic(file) => booleanMIME tipi ya da uzantıya göre HEIC/HEIF tespiti
detectSourceLabel(file) => string"HEIC", "PNG" gibi kısa bir etiket
formatBytes(bytes) => stringörn. "1.4 MB"
TARGET_FORMATSstring[]['jpeg','png','webp','avif']

İndirilende neler var

Lisans

MIT — kişisel ya da ticari projelerinde kullan, değiştir, yayınla; atıf zorunlu değil (ama her zaman memnuniyetle karşılanır).

← Canlı aracı stelluna.io/tr/gorsel-donustur'da dene